2017-01-10 9 views
0

Sylius docを使用して私のSyliusリソース「記事」のカスタムフォームを作成しようとしています。カスタムフォームを作成することなく、すべてがうまく動作しますが、私はカスタムフォームを作成したい場合、私はこのエラーここ"Invalid type for path "sylius_resource.resources.blog.article.classes.form". Expected scalar, but got array."Sylius(Symfony3)でカスタムリソースフォームを作成します。「スカラーが必要ですが配列があります」

に持っている私の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

私は 'デフォルト削除する場合:あなたはクラスが、このコマンドを使用して、あなたの記事のために使用されているかどうか確認することができます

services: app.form.type.article: class: BlogAdminBundle\Form\Type\ArticleType arguments: [BlogBundle\Entity\Article] tags: - { name: form.type } 

:あなたはこのような何かを行う必要がありますBlogAdminBundle \フォーム\タイプ\ ArticleType'をし、 'Form:BlogAdminBundle \ Form \ Type \ ArticleType'を置くだけで、これ以上のエラーはありません:'警告:Sylius \ Bundle \ ResourceBundle \ Form \ Typeの引数1がありません:: AbstractResourceType :: __ construct() ' – wyllyjon

答えて

3

フォームをform.typeサービスとして登録する必要があります。フォームクラスの議論を送る必要があります。 php bin/console debug:container | grep article

+0

うまくいきます!すごい! – wyllyjon

+0

あなたは大歓迎です! –

関連する問題