Symfony2 形式:货币货币符号并在 Twig 中显示
Symfony2 form: Money Currency Symbol and Displaying in Twig
我在 Symfony 中有一个表单,它使用货币字段类型并将货币设置为 GBP。
当我将表单传递给 twig 时,表单使用以下方式呈现:
{{ form_row(form.price) }}
这会呈现以下内容 html:
£<input id="app_product_price" name="app_product[price]" required="required" class="form-control" value="9.95" type="text">
我的目标是尝试获取货币符号,以便我可以使用 bootstrap 货币字段:
<form class="form-inline">
<div class="form-group">
<label class="sr-only" for="exampleInputAmount">Amount (in dollars)</label>
<div class="input-group">
<div class="input-group-addon">$</div>
<input type="text" class="form-control" id="exampleInputAmount" placeholder="Amount">
<div class="input-group-addon">.00</div>
</div>
</div>
<button type="submit" class="btn btn-primary">Transfer cash</button>
</form>
显然,我需要做一些样式设置。但是,我尝试使用下面的方法获取货币符号,但似乎没有我可以看到的任何文档来执行此操作。
{{ form_label(form.price) }}
{{ form_widget(form.price) }}
这些似乎都无法获得货币,我也研究过使用 {{ form_widget(form.price.vars.currency) }}
只是显示错误。
是否有已知的从表单字段中提取货币符号的方法?或者我需要走 Twig Form Theming 路线吗?
恕我直言,没有获取货币符号的特定方法 (check the Form Variables Reference). The default value for the currency is : type: string default: EUR (which correspond to the ISO 4217 code)。
因此您可以简单地将货币设置为空,并且不会呈现任何符号:
$builder
->add('price', MoneyType::class, array('currency'=>''));
您可以使用此 twig 正则表达式显示货币符号:
{{ form.price.vars.money_pattern | replace({ '{{ widget }}':''}) | raw }}
我在 Symfony 中有一个表单,它使用货币字段类型并将货币设置为 GBP。
当我将表单传递给 twig 时,表单使用以下方式呈现:
{{ form_row(form.price) }}
这会呈现以下内容 html:
£<input id="app_product_price" name="app_product[price]" required="required" class="form-control" value="9.95" type="text">
我的目标是尝试获取货币符号,以便我可以使用 bootstrap 货币字段:
<form class="form-inline">
<div class="form-group">
<label class="sr-only" for="exampleInputAmount">Amount (in dollars)</label>
<div class="input-group">
<div class="input-group-addon">$</div>
<input type="text" class="form-control" id="exampleInputAmount" placeholder="Amount">
<div class="input-group-addon">.00</div>
</div>
</div>
<button type="submit" class="btn btn-primary">Transfer cash</button>
</form>
显然,我需要做一些样式设置。但是,我尝试使用下面的方法获取货币符号,但似乎没有我可以看到的任何文档来执行此操作。
{{ form_label(form.price) }}
{{ form_widget(form.price) }}
这些似乎都无法获得货币,我也研究过使用 {{ form_widget(form.price.vars.currency) }}
只是显示错误。
是否有已知的从表单字段中提取货币符号的方法?或者我需要走 Twig Form Theming 路线吗?
恕我直言,没有获取货币符号的特定方法 (check the Form Variables Reference). The default value for the currency is : type: string default: EUR (which correspond to the ISO 4217 code)。
因此您可以简单地将货币设置为空,并且不会呈现任何符号:
$builder
->add('price', MoneyType::class, array('currency'=>''));
您可以使用此 twig 正则表达式显示货币符号:
{{ form.price.vars.money_pattern | replace({ '{{ widget }}':''}) | raw }}