4
關係,我有一個具有多對多relationsship模型Item
與points
這樣的:Laravel,插入一個一對多與雄辯
public function points() {
return $this->has_many('Point');
}
然後在我的控制器,我想,當用戶設置一些數據發佈了一個Item
。所以,我不喜歡這樣寫道:
$item = new Item;
$item->author = $author;
$item->description = '';
$item->link = $link;
$item->source = $url['host'];
$item->title = $title;
$item->url_encoded = $url;
$item->save();
$points = array(
array('ip' => $ip)
);
$item->points()->save($points);
但是這給了我,我似乎得到每次一個錯誤我嘗試保存Point
是:
Array to string conversion
我能做些什麼來插入我的Point
財產item_id
是否正確?
我不使用3,但如果這是4相同我認爲你需要做一個實例嗎? '$ item-> points() - > save(new Point($ points));'? – Robbo 2013-03-17 11:27:01
@Robbo是的我首先嚐試了一下,我使用的例子http://laravel.com/docs/database/eloquent#inserting-related-models這一點令人驚訝的往往不起作用。如果我創建一個新實例,則獲取相同的錯誤消息。 – Ms01 2013-03-17 11:29:45
還有另一種方法可以使用。做同樣的事情,但當談到這一點時,你可以做'$ point = new Point(['ip'=> $ ip]);'然後'$ point-> save();'指向具有'$ item-> points() - > attach($ point-> id)'的項目。請注意,我從內存中寫道,這可能是錯誤的... – Robbo 2013-03-17 11:32:21