【问题标题】:Symfony Twig: send a set parameter with a form submit requestSymfony Twig:发送带有表单提交请求的设置参数
【发布时间】:2017-03-19 21:48:28
【问题描述】:

我的树枝中有一个表单,我希望通过单击其提交按钮,将另一个参数(我在树枝中设置)发送到处理表单的同一操作: 这是我设置的变量

 {% set idprof = profil.id %}

我想将它与提交请求一起发送:(我知道此代码是错误的)

{{ form_widget(form.id),{'idprof': idprof} }}

动作将如下所示:

public function gestProfAction(Request $request, $idprof)
    {
}

很抱歉,我知道这是一个愚蠢的问题,但我还是 symfony 的新手,我自己找不到解决方案。

【问题讨论】:

    标签: symfony


    【解决方案1】:

    只需在表单起始行中传递它

    {{ form_start(form, {'action': path('idprof', { 'idprof': idprof })}) }}
    

    记得为路由添加注解或yaml

    /**
    * @Route("/idprof/{idprof}", name="idprof")
    */
    public function gestProfAction(Request $request, $idprof)
    {
    }
    

    供参考:

    【讨论】:

    • 我收到此错误“变量“idprof”在“???twig.html”中不存在;但我在树枝中设置了“idprof”{% set idprof = profile.id % } !!
    • 你真的需要那个变量吗?试试 {{ form_start(form, {'action': path('idprof', { 'idprof': profile.id })}) }}
    • 是的,一切都是关于那个 var,我试过那个代码,它似乎是正确的,但我改变了一点 {{ form_widget(form, {'action': path('gestProf', { 'idprof': idprof })}) }} :gestProf 是处理表单的动作的路由名称
    • 不要在 path() 函数中使用 idprof var,而是尝试传递 profil.id 看看它是否有效
    • @Susan 这个问题与你原来的问题无关。检查 HTML 源代码,如果将具有给定 idprof var 的路径添加到表单的“action”属性中,您的原始问题已解决。
    猜你喜欢
    • 1970-01-01
    • 2015-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多