2015-12-17 46 views
0

我決定寫一個Sylius的新功能。現在,產品具有availableOn參數,但在某些情況下(如銷售音樂會的門票,發生在特定日期),availableTo也是非常有用的。 所以我添加變量數據庫Sylius - Enitity變量值不以表格的形式加載

<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有一個值。我能做些什麼來解決它?

+0

你嘗試:i''? – scoolnico

+0

@scoolnico是的,它不會改變加載的值 - 仍然2010-01-01 00:00。否則我從availableOn代碼複製了這個:' - > add('availableOn','datetime',array( 'date_format'=>'yM-d', 'date_widget'=>'choice', 'time_widget'= >'text', 'label'=>'sylius.form.product_variant.available_on' )' – Starspire

+0

當您嘗試更新時,'availableOn'的正確值顯示在表單輸入中? – scoolnico

回答

0

這個問題與` 'DATE_FORMAT'=>「Y-M-d H中的溶液我沒有Variant.orm.xml文件中映射出的超添加該字段

<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>