我尝试使用Sylius doc为我的Sylius资源“文章”创建自定义表单。如果不创建自定义表单,一切都运行良好,但如果我想制作自定义表单,则会出现此错误"Invalid type for path "sylius_resource.resources.blog.article.classes.form". Expected scalar, but got array."
这是我的ArticleType类:
<?php
namespace BlogAdminBundle\Form\Type;
use Symfony\Component\Form\FormBuilderInterface;
use Sylius\Bundle\ResourceBundle\Form\Type\AbstractResourceType;
class ArticleType extends AbstractResourceType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
// Build your custom form!
$builder->add('id', HiddenType::class)
->add('titre', TextType::class)
->add('date', DateType::class, array('html5' => true))
->add('contenu', CKEditorType::class)
->add('tags', TextType::class)
->add('resume', TextareaType::class)
->add('save', SubmitType::class, array('label' => 'Enregistrer l\'article'));
}
public function getName()
{
return 'admin_article';
}
}
我的资源声明:
sylius_resource:
resources:
blog.article:
driver: doctrine/orm
classes:
model: BlogBundle\Entity\Article
form:
default: BlogAdminBundle\Form\Type\ArticleType
有谁知道这是什么问题?
谢谢大家!
答案 0 :(得分:4)
您必须将表单注册为form.type服务。你必须发送你的表格类的论点。你应该这样做:
services:
app.form.type.article:
class: BlogAdminBundle\Form\Type\ArticleType
arguments: [BlogBundle\Entity\Article]
tags:
- { name: form.type }
您可以使用以下命令检查文章使用的类:
php bin/console debug:container | grep article