2016-01-03 51 views
0

我不认为这个问题已经提出了看历史和谷歌... 我发现symfony2个人项目,我不知道在实施TBBC货币/货币捆绑(在包装上找到)的表单时,采取正确的方式解决问题。使用TBBC货币/货币捆绑的Symfony /引导形式

我有一个包含价格领域的“费用”类(类型“钱”),并为此我想创建一个表单。

在我的 “ExpenseType” 文件我有以下几点:

public function buildForm(FormBuilderInterface $builder, array $options) { 
     $builder 
       ->add('title', TextType::class) 
       ->add('actualDate', DateType::class, array('widget' => 'single_text')) 
       ->add('comment', TextareaType::class) 
       ->add('price', MoneyType::class, array()) 
       ->add('user', 'entity', array(
        'class' => 'VPAccountsBundle:User', 
        'property' => 'username')) 
     ; 
    } 

在我的树枝文件显示我有以下形式:

<div class="row"> 
      <div class="col-lg-3 col-md-3 control-label"> 
       {{ form_label(form.price, "Amount") }} 
      </div> 
      <div class="col-lg-4 col-md-4"> 
       {{ form_widget(form.price , { 'attr':{ 'class':'form-control', 'placeholder':'Amount' } }) }} 
      </div> 
      {{ form_errors(form.price) }} 

     </div> 

我得到的是this

我希望得到的是下拉按钮(见mockup)自举输入。但我真的不知道如何继续。

有没有人遇到这种情况?任何帮助,将不胜感激! :)

非常感谢。

+0

我有Symfony2中和形式工作一段时间是一个伟大的工具,这使得我问:为什么你需要创建一个表单一个外部软件包时,所有的字段您使用的Symfony是本地从很久以前?但无关紧要,你在寻找的是如何自定义表单渲染,如果是这样看看这个[文档](http://symfony.com/doc/current/cookbook/form/form_customization.html)希望它帮助 – ReynierPM

+0

你好,谢谢你的回复。我选择使用TBBC中的这些MoneyType类而不是原生文本+选择类,因为TBBC MoneyType使得表单小部件能够自动填充我之前在配置文件中声明的货币(我只有3或4个我想使用),似乎是将它们整合到表格中而不是重新宣布它们的最“标准”方式。我将再次看看symfony文档并尝试在树枝文件中自定义MoneyType,但我仍然不确定从哪里开始;-) – Vincent

+0

看一看*什么是表单主题?*它会帮助您理解如何形式为主题,因此做出自己的变化,很容易,如果你卡住让我知道,我会尽力帮助 – ReynierPM

回答

0

在回答自己... 捆绑文档中作为正确指示我必须配置我config.yml申报新类型树枝:

# config.yml 
twig: 
    form: 
     resources: 
      - 'TbbcMoneyBundle:Form:fields.html.twig' 

的表单元素被渲染得更好,应该是很容易定制。

0

主题Symfony中的窗口小部件或窗体已有详细记录here和IMO您应该通过Inside the same Template as the Form。你可以从form_div_layout.html.twig延伸,然后在您的自定义模板覆盖如何money_widget通过改变以下块渲染:

{%- block money_widget -%} 
    {{ money_pattern|replace({ '{{ widget }}': block('form_widget_simple') })|raw }} 
{%- endblock money_widget -%} 

希望它可以帮助

+0

非常感谢您的帮助@ReynierPM。其实我刚刚发现我在做什么错了捆绑,我已经错过了我的config.yml专用于捆绑的树枝形式的配置,现在字段显示好得多,我想我可以定制它们更多比我想象的要轻松!我会阅读模板定制,因为它在不久的将来应该是非常有用的。再次感谢。 – Vincent

+0

很高兴听到我可以帮助,如果我的回答有助于随时接受它;)祝你好运 – ReynierPM