0

Après avoir travaillé un certain temps avec FOSRestBundle, j'ai l'impression qu'il me manque quelque chose. À mon avis FOSRestBundle et FormType de Symfony - sont similaires. Les deux sont votre "courtier de données". Chacun a sa propre chose, mais finalement ils sont similaires.Comment faire fonctionner NelmioApiDocBundle avec FormType de Symfony

De nos jours, tout le monde migre vers des applications d'une seule page. Ce qui signifie que tout le monde essaie d'utiliser leur (s) FormType (s) existant (s) et construit une API en utilisant FOSRestBundle. Mais ils ne peuvent pas le documenter facilement. NelmioApiDocBundle ne fonctionne pas avec FormType. Ou est-ce que je manque quelque chose? Donc, ma question est: est-il possible de "dire" à NelmioApiDocBundle d'utiliser un FormType pour sa documentation (décrire les données requises)?

On dirait il y a un workaround pour cette question, mais il ne fonctionne pas.

annotation Contrôleur:

@ApiDoc(
    resource=true, 
    description="Register a new User", 
    views = {"v1"}, 
    input="register_form" 
) 

FormType:

public function configureOptions(OptionsResolver $resolver) 
{ 
    $resolver->setDefaults(array(
     'data_class' => User::class, 
     'csrf_protection' => false, 
     'allow_extra_fields' => true, 
    )); 
} 

public function getBlockPrefix() 
{ 
    return 'register_form'; 
} 

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

service.yml:

register_form: 
    class: AppBundle\Form\API\UserRegisterType 
    tags: 
     - { name: form.type, alias: register_form } 

S'il vous plaît conseiller, Merci!

Répondre

0

Au lieu de input="register_form" utilisation input=“AppBundle\Form\API\UserRegisterType”

+0

Il ne fonctionne pas – eldad87

+0

je l'ai juste comme ça et il fonctionne, essayez de supprimer 'ressource = true,', aussi quelle version de nelmioapidoc êtes-vous? et comment votre point de terminaison apparaît-il dans la documentation, les paramètres sont-ils simplement vides? – kunicmarko20

+0

J'ai utilisé la dernière version stable. Pendant ce temps, je suis passé à dev-master - cette version fonctionne correctement! et ça a l'air mieux. – eldad87