我有一个过滤条,可让我在数据库中搜索一些结果。
我有一条flash消息,显示我在其中输入单词时会发现多少结果。
这是我的控制器
public ActionResult Delivery()
{
return PartialView();
}
,这是我的模板
if ($filter != '') {
$this->get('session')->getFlashBag()->add('info', 'worked!');
}
因此,当我实际研究事物时,无论我有1个或更多结果,它都不会改变我的句子。
{% for message in app.session.flashbag.get('info') %}
{{ message }}
{% endfor %}
仍然使用résultats
编写,因为它是硬编码的。我怎样才能创建一些允许我在模板中复数和单个化单词的东西?我应该直接进入控制器吗?
修改
我在模板中直接使用了这种方法,但我不认为这是一种“好习惯”。有什么帮助可以做得更好吗?
s
翻译
{{ results.getTotalItemCount }}
{% if results.getTotalItemCount <= 1 %}
{{ 'this.is.your.result'|trans({ '%count%': results.getTotalItemCount}) }}
{% else %}
{{ 'this.is.your.results'|trans({ '%count%': results.getTotalItemCount}) }}
{% endif %}
答案 0 :(得分:1)
你应该检查翻译here中的复数,你可以使用transChoice()方法,解释here如何使用它。
在这里,您可以看到如何在树枝中使用它:
https://stackoverflow.com/a/10817495/5258172
修改强>: 你的答案可以这样做:
this:
is:
your.result: "1 résultat|%count% résultats"
然后在你的树枝上:
{{ 'this.is.your.result'|transchoice(results.getTotalItemCount) }}