一尘不染

教义中的默认值

php

如何在Doctrine 2中设置默认值?


阅读 244

收藏
2020-05-26

共1个答案

一尘不染

数据库默认值不受“便携式”支持。使用数据库默认值的唯一方法是通过columnDefinitionmapping属性,在该属性中为字段所映射的列指定SQL代码段(DEFAULT包括原因在内)。

您可以使用:

<?php
/**
 * @Entity
 */
class myEntity {
    /**
     * @var string
     *
     * @Column(name="myColumn", type="string", length="50")
     */
    private $myColumn = 'myDefaultValue';
    ...
}

最好使用PHP级别的默认值,因为这些值也可以在新创建和持久保存的对象上正确使用(持久保存新对象以获取默认值后,Doctrine不会返回数据库)。

2020-05-26