【发布时间】:2016-03-05 15:14:33
【问题描述】:
我在 OpenClassrooms 上传递了course。
我创建了一个简单的表单。
控制器:
// src/OC/PlatformBundle/Controller/AdvertController.php
namespace OC\PlatformBundle\Controller;
use OC\PlatformBundle\Entity\Advert;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class AdvertController extends Controller
{
public function addAction(Request $request)
{
// On crée un objet Advert
$advert = new Advert();
// On crée le FormBuilder grâce au service form factory
$formBuilder = $this->get('form.factory')->createBuilder('form', $advert);
// On ajoute les champs de l'entité que l'on veut à notre formulaire
$formBuilder
->add('date', 'date')
->add('title', 'text')
->add('content', 'textarea')
->add('author', 'text')
->add('published', 'checkbox')
->add('save', 'submit')
;
// Pour l'instant, pas de candidatures, catégories, etc., on les gérera plus tard
// À partir du formBuilder, on génère le formulaire
$form = $formBuilder->getForm();
// On passe la méthode createView() du formulaire à la vue
// afin qu'elle puisse afficher le formulaire toute seule
return $this->render('OCPlatformBundle:Advert:add.html.twig', array(
'form' => $form->createView(),
));
}
}
查看:
{# src/OC/PlatformBundle/Resources/views/Advert/form.html.twig #}
<h3>Formulaire d'annonce</h3>
<div class="well">
{{ form(form) }}
</div>
我得到了错误: 无法加载类型“表单” 500 内部服务器错误 - InvalidArgumentException
*课程是为 Symfony2 编写的,我使用的是 Symfony3。
什么类型的“表单”不能加载?可能是什么问题?
【问题讨论】: