如何在Doctrine Mongodb文档中设置默认值?

时间:2013-12-03 09:45:03

标签: symfony-2.1 doctrine-mongodb

如何在字段中设置默认值。

在我的文档中,我需要为字段emailnotify设置默认值false 在mogodb中,默认值应为零。

检查我的文件

namespace xxx\xxxBundle\Document;

use FOS\UserBundle\Document\User as BaseUser;
use Doctrine\ODM\MongoDB\Mapping\Annotations as MongoDB;

/**
 * @MongoDB\Document
 */
class User extends BaseUser
{
    /**
     * @MongoDB\Id(strategy="auto")
     */
    protected $id;

    /**
     * @MongoDB\Boolean
     */
    protected $emailnotify;

    /**
     * Sets the emailnotify.
     *
     * @param boolean $emailnotify
     *
     * @return User
     */
    public function setEmailnotify($emailnotify)
    {
        $this->emailnotify = (Boolean) $emailnotify;
        return $this;
    }
    /**
     * @return boolean
     */
    public function isEmailnotify()
    {
        return $this->emailnotify;
    }

}

1 个答案:

答案 0 :(得分:1)

我发现在构造函数中设置默认值

public function __construct() {
    $this->emailnotify = false;
}

当然,如果您之后使用Doctrine再次获取Document,那么将类变量设置为false将适用于大多数部分,但该属性不会像上面那样持久保存到MongoDB。