在我的laravel应用程序中,我有三个模型之间的关系,user
模型有很多pages
,pages
有很多keywords
,所有这些都对应于数据库上三个名称相同的表。我想创建一个user
,并将用户pages
和keywords
传递到页面。我怀疑我是否知道该怎么做。我所做的如下,但它不起作用,即使当我将keywords
添加到$fillable
时,它也会抛出异常no column keywords on pages
我所做的是:
$pages = [
'name' => 'mimi',
'link' => 'mimi',
'category' => 'trivial',
'keywords' => [
['name' => 'GGG'],
['name' => 'DDD']
]
];
$user->pages()->create($pages);
您需要先创建页面,然后再添加关键字。(不确定语法是否正确)
$pages = [
'name' => 'mimi',
'link' => 'mimi',
'category' => 'trivial'
];
$keywords = ['GGG','DDD'];
$page = $user->pages()->create($pages);
foreach($keywords as $keyword) {
$page->keywords()->create(['name' => $keyword]);
}