用列名称推进ORM,名为"删除"

时间:2014-09-16 04:41:17

标签: php propel

我在第三方数据库中有一个名为“已删除”的列名(我无法更改)。 当我使用propel生成对象模型时,它会生成一个基类,其中包含一个名为“$ deleted”的属性供自己使用。然后它将我的“已删除”列添加为也称为“$ deleted”的属性。 在尝试执行查询时,它会抱怨“无法重新声明Base \ myClass :: $ deleted”。如何阻止推进生成具有与数据库列同名的属性的Base对象?有没有办法在schema.xml中执行此操作?我尝试使用phpNamingMethod属性,但这只会更改方法名称,而不是成员变量。

这是通过推进每个Base对象生成的:

 /**
     * attribute to determine whether this object has been deleted.
     * @var boolean
     */
    protected $deleted = false;

这是从我的schema.xml文件生成的:

 /**
     * The value for the deleted field.
     * @var        int
     */
    protected $deleted;

1 个答案:

答案 0 :(得分:1)

只需定义另一个phpName。

<column name="deleted" phpName="otherDeleteName" type="boolean" />