为了账号安全,请及时绑定邮箱和手机立即绑定

Symfony 提交按钮不起作用 IsSubmitted 从未验证

Symfony 提交按钮不起作用 IsSubmitted 从未验证

PHP
ABOUTYOU 2023-05-26 14:23:08
我正在学习 symfony 4,我正在测试如何通过从表单中获取数据来更新数据库。似乎 isSubmitted 从未经过验证。这是我的控制器/** * @Route("scheduler/new", name="scheduler_create") * @Route("scheduler/{id}/edit", name="scheduler_edit") */public function form(Task $task = null, Request $request, EntityManagerInterface $manager){    if(!$task) {        $task = new Task();    }    $form = $this->createForm(TaskType::class, $task);    $form->handleRequest($request);    if($form->isSubmitted() && $form->isValid()){        $manager->persist($task);        $manager->flush();        return $this->redirectToRoute('scheduler_show', ['id' => $task-> getId()]);    }    return $this->render('scheduler/create.html.twig', [        'formTask' => $form->createView(),        'editMode'=> $task->getId() !== null    ]);}我的看法 :{% extends 'base.html.twig' %}{% form_theme formTask 'bootstrap_4_layout.html.twig' %}{% block body %}    <h1> Création d'une tâche </h1>    {{ form_start(formTask) }}    <p>         Inscrire ici le nom souhaité pour la tâche : {{form(formTask.title, {'attr' : {'placeholder' : "Titre de la tâche"} }) }}        Veuillez d'écrire l'objet de la tâche : {{form(formTask.content, {'attr' : {'placeholder' : "Description de la tâche"} }) }}        Séléctionner le groupe destinataire de la tâche : {{form(formTask.groupe) }}     </p>    <p> A quelle date et souhaitez vous executer la tâche ? {{form(formTask.launch_date) }} </p>    {{form(formTask.activer) }}    <button type="submit" class="btn btn-success">        {% if editMode %}            Sauvegarder les modifications        {% else %}            Sauvegarder la tâche        {% endif %}    </button>    {{ form_end(formTask) }}{% endblock %}我已经使用 symfony 工作了 2 周,所以没那么久。我正在关注一个在线教程,它一直有效,直到现在我看不到任何错误消息,也不知道该如何解决。
查看完整描述

2 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

为了使这样的按钮起作用,它必须在{{ form_start(your_form) }} {{ form_end(your_form) }}树枝标签内

否则它不会算作表单提交按钮

你可以通过使用来解决这个问题$builder->add('submit', SubmitType::class);

讨论后编辑:

要自定义表单行的呈现,form_row(form.children)应该使用而不是form(form.children)因为这将显示表单错误等所有信息。

查看完整回答
反对 回复 2023-05-26
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

我有同样的问题:我尝试使用按钮提交,但它不起作用!我忘了放一个 {{ form_start(my_form) }} ..... {{ form_end(my_form) }}



查看完整回答
反对 回复 2023-05-26
  • 2 回答
  • 0 关注
  • 109 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信