在Laravel 4中,如何检索最后插入的数据透视记录的ID?
我的模型定义如下:
class Action extends Eloquent
{
public function people()
{
return $this->belongsToMany('Person')->withTimestamps()->withPivot('mailing_data');
}
}
class Person extends Eloquent {
public function actions()
{
return $this->belongsToMany('Action')->withTimestamps();
}
}
我希望获得插入记录的ID
$action->people()->attach($person_id);
有没有办法不使用mysql_insert_id
?我更喜欢雄辩的方式。
我使用的是Laravel 4,而不是4.1
答案 0 :(得分:2)
理想情况下,您应该使用mysqli_insert_id
而不是已弃用的mysql_insert_id
,但您需要确保使用相同的连接。
在“Eloquent”中解决问题的最简单,最安全的方法。方法是简单地使用您已经知道的事实($person_id
以及您将人们附加到的事物)通过查询查找数据透视记录ID。
编辑:或者,如果id
很重要,请考虑不使用数据透视表。