2016-10-18 2 views
0

le service de type de formulaire ne peut pas être défini, où est le problème !!!Sylius: Impossible de charger le type "app.form.type.slider"

AppBundle/Ressources/config/routing.yml:

app_slider_create: 
path: /sliders/slider/new 
methods: [GET, POST] 
defaults: 
    _controller: app.controller.slider:createAction 
    _sylius: 
     form: app.form.type.slider 

AppBundle/Ressources/config/services.yml:

app.form.type.slider: 
    class: AppBundle\Form\Type\add_img_sliderType 
    tags: 
       - { name: form.type, alias: app_slider } 
    arguments: [@doctrine, @sylius.context.locale] 

AppBundle/Forme/Type/add_img_sliderType .php:

<?php 
namespace AppBundle\Form\Type; 

use Sylius\Bundle\ResourceBundle\Form\Type\AbstractResourceType; 
use Symfony\Component\Form\FormBuilderInterface; 
use Symfony\Component\Form\Extension\Core\Type\FileType; 

class add_img_sliderType extends AbstractResourceType 
{ 
    public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     // Build your custom form! 
     $builder 
     ->add('lib', 'text', [ 
     'label' => 'Libélle', 
     ]) 
     ->add('description', 'text', [ 
    'label' => 'Description', 
     ]) 
    ->add('path',FileType::class, [ 
    'required' => true, 
    'label' => 'Photo', 
    ]) 
    ; 
    } 

    public function getName() 
    { 
     return 'app_slider'; 
    } 


} 
+0

S'il vous plaît envoyer votre code de SliderType – Brett

+0

@Brett i édité mon code afin que vous puissiez voir le sliderType –

+0

Et son chargement sans aucun doute le fichier services.yml? Ajoutez le code pour votre fichier DependencyInjection/* Extension.php aussi – Brett

Répondre

2

Je suppose que vous devriez définir la forme dans le routage par étiquette, pas par le nom complet du formulaire. Ainsi, votre configuration de routage doit être:

app_slider_create: 
    path: /sliders/slider/new 
    methods: [GET, POST] 
    defaults: 
     _controller: app.controller.slider:createAction 
     _sylius: 
      form: app_slider 

S'il vous plaît, laissez-moi savoir si ça aide;)

+0

J'ai essayé votre solution et une autre exception est apparue: Impossible de trouver le modèle "/create.html.twig" (regardé dans: C: \ wamp3 \ www \ sidratsoft_wss \ fournisseur \ symfony \ symfony \ src \ Symfony \ Bridge \ Twig/Ressources/views/Form , C: \ wamp3 \ www \ sidratsoft_wss \ fournisseur \ knplabs \ knp-menu \ src \ Knp \ Menu/Ressources/vues). Quel peut être le problème ? –

+0

Vous devez définir le modèle sous la clé '_sylius'->' template', '/ create.html.twig' est la valeur par défaut. Pour plus d'informations, s'il vous plaît consulter [docs SyliusResourceBundle] (http://docs.sylius.org/en/latest/bundles/SyliusResourceBundle/), vous devriez trouver là des réponses à toutes les questions;) BTW - Je vous vois ' re travailler sur ** Windows **, donc s'il vous plaît, sachez que ** le support de Sylius ** pour ce système d'exploitation est encore WIP et vous pouvez rencontrer quelques difficultés. – Zaleslaw

+0

thx, ça, j'ai raté la clé de modèle. Excusez-moi de vous déranger, mais pouvez-vous me dire comment puis-je télécharger des fichiers sur mon projet à partir de ce formulaire pour les afficher plus tard, que dois-je faire pour y parvenir? –