- > save()调用以获取最后一个插入ID之后有什么办法吗?Kohana 3 ORM检索最后一个插入ID
示例代码:
$post_data = $_POST;
$user = ORM::factory('user');
$user->username = $post_data['username'];
$user->email = $post_data['email'];
$user->save();
- > save()调用以获取最后一个插入ID之后有什么办法吗?Kohana 3 ORM检索最后一个插入ID
示例代码:
$post_data = $_POST;
$user = ORM::factory('user');
$user->username = $post_data['username'];
$user->email = $post_data['email'];
$user->save();
当然,假设你插入的代码看起来像这样:
$user = ORM::factory('user')->values($post)->save();
得到最后插入ID根本就这个调用->save()
echo $user->id;
在你的情况,你会需要后因为您已经命名了主键user_id
,因此请执行$user->user_id
。
我会建议或者biakaveron的建议改用$user->pk()
,因为它总是返回主键的值,无论给它的名字的,前提是你在你的模型$_primary_key
指定主键的名称。
如果插入工作,将使用保存的值填充模型,以备重新使用。
工作完成!
只需拨打$model->id;
- ORM会做最后的插入ID包容你。
我更新了我的问题......而$ user-> id给了我一个错误。 ** id属性在Model_User类中不存在** 。但是我可以通过调用'$ user-> pk()'来获得最后一个插入ID。 – 12Bo 2012-01-14 20:33:19
你的用户表有一个名为'id'的主键吗? – 2012-01-14 20:40:58
我的模型用户表: 'Class Model_User extends ORM { protected $ _primary_key ='user_id'; }' – 12Bo 2012-01-14 22:48:26