Sylius - 实体变量值不以

时间:2015-12-17 13:00:18

标签: symfony symfony-forms sylius

我决定给Sylius写一个新功能。现在,产品有availableOn个参数,但在某些情况下(比如出售音乐会的门票,这是在特定日期举行),availableTo也非常有用。 所以我将变量添加到数据库

<field name="availableTo" column="available_to" type="datetime" nullable="true">
      <gedmo:versioned />
</field>

还为ProductVariant模型添加了参数,添加到构造函数

$this->availableTo = new \DateTime();

ProductInteraceVariantInterface添加了方法定义。 将标签和小部件添加到布局

{{ form_label(form.masterVariant.availableTo) }}
{{ form_widget(form.masterVariant.availableTo, {'label': false})}}

还将其添加到VariantType构建器:

->add('availableTo', 'datetime', array(
                'date_format' => 'y-M-d',
                'date_widget' => 'choice',
                'time_widget' => 'text',
                'label'       => 'sylius.form.product_variant.available_to'
            ))

一切正常,除非我在编辑模式下加载的值不是来自数据库(保存工作正常,所以我可以输入日期,保存,这存储在数据库中并在其他地方正确显示视图)。有一个值2010-01-01没有小时。我该怎么做才能解决它?

1 个答案:

答案 0 :(得分:0)

此问题的解决方案是我没有在Variant.orm.xml文件中的mapped-superclass中添加此字段

<mapped-superclass name="Sylius\Component\Product\Model\Variant" table="sylius_product_variant">
      <field name="availableOn" column="available_on" type="datetime" nullable="true" />
      <field name="availableTo" column="available_to" type="datetime" nullable="true" />
</mapped-superclass>