В таблице миграции:
Schema::create('passws', function (Blueprint $table) {
$table->increments('id');
$table->integer('regist_id')->unsigned()->nullable();
$table->foreign('regist_id')->references('id')->on('regists');
$table->string('age');
$table->timestamps();
});
}
Модель регистрации - определено массовое присвоение.
public function pass(){
return $this->hasOne('App\Passw');
}
В контроллере
$name = $request->name;
$task = Regist::whereName($name)->get();
foreach ($task as $tasks){
$passw1->regist_id = $tasks->id;
}
$passw1->age = $request->age;
$regist = new Regist();
$regist->pass()->save($passw1);
Когда я сохраняю данные, сохраняется только возраст, но regist_id сохраняется как нуль (нет сообщения об ошибке или ничего). Здесь я уверен, что контроллер показывает "regist_id" => 1
и "age" => 25
, когда я использую dd($passw1);
regist_id, только не получает записи в таблице БД.
Где я делаю ошибку??