Существует что-то мне не хватает в красноречивого отношения один-к-одному:One-To-One красноречивый отношениях функции
class MeetingTest extends Model
{
protected $table = 'meeting_tests';
public function meeting() {
return $this->belongsTo('App\Meeting','meeting_id','id');
}
public function observation() {
return $this->hasOne('App\Observation','meeting_test_id','id');
}
public function activity() {
return $this->hasOne('App\TestActivity','activity_id','id');
}
}
Класс Наблюдение
class Observation extends Model
{
protected $table = 'observations';
public function meetingTest() {
return $this->belongsTo('App\MeetingTest','meeting_test_id','id');
}
}
Если я бегу PHP мастеровых подправлять и
$mtn = App\MeetingTest::create();
$mtn->save();
$ob = App\Observation::create();
$ob->save;
$mtn->observation()->save($ob);
В этот момент внутри записи наблюдения я вижу, что meeting_test_id заполнен правильным идентификатором meetingTest, но если я пытаюсь:
$ mtn-> наблюдение
это дает мне нуль; и в базе данных нет идентификатора наблюдения в поле наблюдения_id;
это миграция:
Schema::create('meeting_tests', function (Blueprint $table) {
$table->increments('id');
$table->integer('meeting_id')->unsigned();
$table->integer('observation_id')->unsigned()->nullable();
$table->integer('activity_id')->unsigned()->nullable();
$table->timestamps();
});
Я не понимаю, что это не правильно.