根据文档,保存后的Doctrine_Record应设置新创建记录的ID 作为对象属性。在我的例子中,创建了新记录,但没有在对象上设置值(而数据库具有这个新的id值)。造成这种情况的原因是什么?
$user1 = new ModelUsers();
$user1->save();
echo "last insert id=" . $user1->UserId;
PS UserId在Model类中配置为'primary' => true, 'autoincrement' => true
答案 0 :(得分:2)
您正在使用驼峰案例语法,该语法用于访问相关项目,如:
$object->Related->getId();
访问Doctrine_Record属性时,您应该使用以下语法之一:
$object['user_id'];
$object->getUserId();
$object->user_id; // note that this is NOT camel case, but lowercase with underscores
$object->get('user_id');