You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Phalcon Volt模板:循环中text_area无法解析变量名求助

解决Twig中text_area函数变量不解析的问题

嘿,这个问题我太熟悉了!你碰到的是Twig模板里变量解析的典型小坑——你在text_area函数的第一个参数里用了{{ }}包裹变量,这会让Twig把它当成字面字符串处理,自然只会输出language.getLanguage()这个文本,而不是解析后的语言值。

问题根源

Twig的函数参数本身就处于Twig的语法上下文里,不需要再用{{ }}来包裹变量(那是用来在HTML中输出变量值的语法)。你把变量放在''里再加{{ }},相当于告诉Twig:“我要传一个字符串,内容就是{{ language.getLanguage() }}”,而不是让它解析变量。

修改后的代码

把text_area里的'{{ language.getLanguage() }}'直接改成language.getLanguage()就可以了,去掉多余的引号和模板输出标签:

{% for language in languages %}
    <div class="form-group">
        <label for="{{ language.getLanguage() }}">{{ language.getLanguage() }}</label>
        {{ text_area(language.getLanguage(), 'size' : 30, 'class' : 'form-control form-filter input-sm') }}
    </div>
{% endfor %}

额外说明

你label里的写法是完全正确的,因为那是在HTML标签的文本内容中,必须用{{ }}来输出变量的值;而text_area是Twig的函数,参数直接传递变量名就能让Twig解析它的实际值啦。

内容的提问来源于stack exchange,提问作者user1547410

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:19:32