一个类用于数据库和表单?

时间:2012-08-06 10:30:49

标签: php symfony doctrine

我有一个名为Domains的类,包含属性 - 域,用户,开始日期,截止日期...我使用它一次创建带注释的数据库,一次用于创建一个只发生几个的表单类域中的属性 - 例如开始日期和截止日期(表单用于更新信息)。我以这种方式创建表单:

public function buildForm(FormBuilder $builder, array $options)
{
    $builder->add('start_date', 'date', array('widget' => 'single_text', 'format' => 'yyyy-MM-dd')); ...

我的问题是:是否有可能同时使用这两种注释 - 用于验证和数据库:

/**
 * @ORM\Column(type="date", nullable=true)
 */
/**
 * @Assert\NotBlank()
 * @Assert\Type("\DateTime")
 */
protected $start_date;

如果一个带注释而另一个带有.yml文件,那么它是否可能?如果是的话,这是一个很好的做法吗?我之所以这样做是因为很多属性是相同的 - 只有与数据库一起使用的类才有更多这样的类,并且写两个类的部分是相同的似乎没有意义。我也想过继承,但问题仍然存在。请告诉我哪些最适合! :) 提前致谢!

1 个答案:

答案 0 :(得分:1)

是的,您可以添加两种注释。这样做:

/**
 * @ORM\Column(type="date", nullable=true)
 * @Assert\NotBlank()
 * @Assert\Type("\DateTime")
 */
protected $start_date;