我想在symfony2中創建一個名爲daterange
的自定義表單域,它將擴展默認的symfony日期類型表單域,並將日期範圍(開始日期和結束日期)分爲兩個不同的文本框。如何在symfony2中創建自定義字段類型?
回答
因爲我不喜歡樹枝模板引擎這個例子只針對PHP模板
你需要的是做:
新
TestBundle\Form\Extension\Core\Type\DateRangeType
延伸Symfony\Component\Form\AbstractType
在這裏你應該:
a。編寫你自己的getParent,getName,buildForm方法
b。 getParent返回'字段'
c。 getName返回'daterange'
d。 buildForm具有$builder->add('start', ...)->add('end', ...)->setAttribute('widget', 'daterange')
它加入到DI(config.yml爲例)
services: form.type.daterange: class: TestBundle\Form\Extension\Core\Type\DateRangeType tags: - { name: form.type, alias: daterange }
在
TestBundle/Resources/views/Form/daterange_widget.html.php
創建它新的小部件你可以以日期小部件爲例。Src/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/date_widget.html.php
添加到配置(config.yml爲例)
framework: templating: form: resources: - 'TestBundle:Form'
而對於更多的小部件定製爲nefo_x說檢查form customization。
爲了做到這一點,你需要將以下行添加到app/config/config.yml
twig:
form:
resources:
- 'YourSuperBundle:Form:fields.html.twig'
然後在src/Your/SuperBundle/Resources/views/Form/fields.html.twig
:
{% extends 'form_div_layout.html.twig' %}
{% block daterange_widget %}
... do the customization.
{% endblock %}
有關更多參考,請閱讀Symfony的2.0書form customization。
+1提到'fields.html.twig'的路徑 - 在文檔中並不明顯。謝謝。 –
在創建自定義字段類型的官方食譜中有一個good entry
- 1. 如何在自定義發佈類型中創建自定義字段
- 2. 如何在wordpress中創建自定義字段到自定義頁面類型
- 3. 如何在自定義帖子類型中創建自定義字段?
- 4. 使用自定義字段創建自定義帖子類型
- 5. 創建自定義字段類型和自定義內容類型
- 6. 在自定義內容類型中創建鏈接字段
- 7. 在configureDatagridFilters中創建自定義類型字段 - Sonata管理
- 8. 在Symfony 2中創建自定義字段類型?
- 9. 在Drupal中創建自定義CCK字段類型
- 10. 在sugarcrm自定義模塊中創建文件類型字段
- 11. 如何在symfony2中爲自定義類創建服務容器
- 12. 如何在模塊中創建自定義表單字段類型?
- 13. 在Joomla中使用預定義字段創建自定義文章類型
- 14. Symfony2:(子)類別自定義字段類型
- 15. 自定義字段類型
- 16. 在Salesforce中創建自定義字段
- 17. 創建自定義字段
- 18. 創建自定義字段
- 19. Symfony2 DateRange自定義類型
- 20. 如何創建自定義字段,並連同自定義字段中的SugarCRM
- 21. 如何在另一個自定義字段類型上將分類與自定義字段類型相關聯?
- 22. 自定義表單字段類型嵌入形式的Symfony2
- 23. Symfony2提交時自定義字段類型和表單事件
- 24. 構建自定義字段類型:如何呈現自定義屬性?
- 25. 從自定義帖子類型字段創建頁面標題
- 26. 機車CMS - 創建自定義字段類型
- 27. 爲自定義內容創建新字段類型
- 28. 創建自定義字段類型與其他欄設置
- 29. Symfony2自定義(HTML5)日期字段創建
- 30. Symfony2 - 創建超級管理員自定義字段的要求
您是否在某處發佈了代碼? –