保存后,使doctrine加载auto_increment值

时间:2010-01-03 22:00:36

标签: php doctrine

我正在使用Doctrine进行数据库抽象。现在我想从新创建的(和auto_increment'd)对象中获取save()主键 - 但$obj->toArray()在调用{{1}后显示该字段为空}}

有没有我不知道的旗帜呢?或者我真的必须从数据库中查询对象吗?

2 个答案:

答案 0 :(得分:3)

确保在setTableDefinition()方法(或相关的YAML配置文件)中设置对象时设置了自动增量标记。如果未设置此标志,则Doctrine将不知道更新它。你应该有这样的东西:

 $this->hasColumn('id', 'integer', 4, array(
                  'type' => 'integer',
                  'length' => 4,
                  'fixed' => false,
                  'unsigned' => true,
                  'primary' => true,
                  'autoincrement' => true //this flag right here
             )
 );

答案 1 :(得分:0)

refresh之前的记录实例上调用toArray