我试图将表单传递给视图,但它不会显示,我收到错误500(页面加载已停止,然后,当我尝试访问另一个页面时,它会冻结)
我尝试了几个教程,包括官方的symfony文档,我总是得到同样的观点。
所以请帮帮我......(下面是我的代码)
我的控制器
<?php
namespace siteBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use siteBundle\Form\ContactType;
use siteBundle\Entity\Contact;
class SiteController extends Controller
{
public function navigationAction(string $page,Request $request)
{
$option=array();
if ($page=='contact')
{
$donnees=new Contact();
$form=$this->createForm(ContactType::class,$donnees);
$option['contact']=$form->createView();
}
return $this->render('siteBundle:Pages:'.$page.'.html.twig',$option);
}
}
?>
我的观点
{% extends 'general.html.twig' %}
{% block description %}blabla{% endblock %}
{% block title %}blabla{% endblock %}
{% block body %}
<div class="container">
<h1>Prendre Contact </h1>
<p class="text-justify">
<br>blabla
</p>
<br>
<div class="row text-center">
<div class="col-md-6">
<p>
<img src="{{ asset('bundles/site/img/telephone.png') }}" alt="téléphone"><br>
<p><a href="tel:0123456789">01.23.45.67.89</a></p>
</p>
</div>
<div class="col-md-6">
<p>
<img src="{{ asset('bundles/site/img/email.png') }}" alt="email"><br>
<p><a href="mailto:a@b.fr">a@b.fr</a></p>
</p>
</div>
</div>
<br>
<div class="row text-center">
<p>
<img class="text-center" src="{{ asset('bundles/site/img/formulaire.png') }}" alt="Formulaire"><br>
<p>Complétez le formulaire ci-dessous</p>
</p>
</div>
{% if contact is defined %}
<div>
{{ form_start(contact) }}
{{ form_widget(contact) }}
{{ form_end(contact) }}
</div>
{% endif %}
</div> <!-- container -->
{% endblock %}
提前感谢您的帮助
此致
答案 0 :(得分:0)
确保使用dev
env显示异常的堆栈跟踪。
您可以使用/app_dev.php
。
答案 1 :(得分:0)
我的意见,错误在:
return $this->render('siteBundle:Pages:'.$page.'.html.twig',$option);
使用:
return $this->render('SiteBundle:pages:'.$page.'.html.twig',$option);
检查你的日志! /var/logs/prod.log或error.log,您会发现错误消息
答案 2 :(得分:0)
在您的路线中,按controller
_controller
答案 3 :(得分:0)
也许这会有所帮助: 如果我摆脱渲染行上的数组$选项(见下面的代码),绝对没有问题,页面加载正常。
return $this->render('siteBundle:Pages:'.$page.'.html.twig');
将变量传递给模板时会发生一些事情...