laravel

Laravel Eloquent One to Many Relationship

Чтобы определить отношение один-ко-многим, убедитесь, что одна из таблиц имеет ключ "id", который ссылается  на другую таблицу.
Например, "posts" таблица должна иметь поле с именем "user_id". Оно будет ссылаться на поле "users.id" . Eloquent позаботится об остальном.

```
// app/User.php
...
    public function posts() {
        return $this->hasMany('App\Post');
    }
...
```
```
// app/Post.php
...
    public function user() {
        return $this->belongsTo(User::class);
        //(!) or 
        //return $this->belongsTo(User::class, 'user_id');
    }
...
```

 

Чтобы подгрузить отношения в выборку можно выполнить:

$user->load('posts');


Чтобы получить из выборки только отношения:

$user->getRelations();

Чтобы сохранить отношение один ко многим:

$user->posts()->saveMany($posts);

or

$user->posts()->save($post);

Афоризм дня:
Ложь опровергнуть непреложными фактами. (601)

Leave a reply