2012-09-06 11 views
14

Ho bisogno di installare SonataUserBundle per poter installare SonataNewsBundle.Il bundle "ApplicationSonataUserBundle" non esiste o non è abilitato

ho seguito passo dopo passo installation Tutorial ma ho ottenuto questo errore:

./app/console sonata:easy-extends:generate SonataUserBundle 



    [InvalidArgumentException]             
    Bundle "ApplicationSonataUserBundle" does not exist or it is not enabled. 

Il bundle non è stato ancora generato. questo comando dovrebbe farlo!

Qualcuno ha qualche idea su come risolvere questo problema?

risposta

29

Modifica 2016/09/23: questa risposta può essere un po 'obsoleta. Se questo non funziona, puoi esplorare semplicemente @ashish answer.

Durante l'installazione Bundle utente Sonata, si consiglia di mappare dottrina: orm per ApplicationSonataUserBundle, e questo non può essere fatto durante sonata: facile si estende: generare SonataUserBundle perché l'ApplicationSonataUserBundle non esiste ancora .

Quindi, prima lauching tuoi sonata: facile estende: generare SonataUserBundle comando, è possibile lasciare un commento, il ApplicationSonataUserBundle linea:

# app/config/config.yml 
[...] 
# Doctrine Configuration 
doctrine: 
    [...] 
    orm: 
    auto_generate_proxy_classes: %kernel.debug% 
     entity_managers: 
     default: 
      mappings: 
      # ApplicationSonataUserBundle: ~ 
      SonataUserBundle: ~ 

Poi lanciare il vostro sonata: facile estende: generare SonataUserBundle comando, Infine, rimuovi i commenti (il #) su *** ApplicationSonataUserBundle: ~ **

Bundl e "ApplicationSonataUserBundle" non esiste o non è abilitato l'errore non funziona.

Buona giornata.

+0

Funziona perfettamente .. –

0

Bene, questo comando è il passaggio 5 e devi eseguire i primi 4 passaggi prima di poter eseguire questo quinto passaggio.

L'errore che si ottiene è perché avete perso il passaggio 2: Installazione del fascio e la configurazione del quadro (per esempio l'AppKernel non conoscono il fascio)

+2

bene al punto 2.3.1 ci hanno detto di impostare quella configurazione errata. – GusDeCooL

2

mi sono installato, eliminando i riferimenti a Application \ Sonata \ UserBundle \ Entity \ User e Application \ Sonata \ UserBundle \ Entity \ Group da config.yml e 'new Application \ Sonata \ UserBundle \ ApplicationSonataUserBundle()' da AppKernel.php.

Quindi eseguire il comando easy extends generate, quindi inserire i riferimenti in. Penso che i documenti abbiano un po 'confuso questi passaggi. Non è possibile fare riferimento a un pacchetto in config.yml finché non esiste.

2

Ciao ho lo stesso problema. Ma posso risolvere questo.Vediamo quello che sto facendo:

Al comando:

php app/console sonata:easy-extends:generate -d src/ SonataUserBundle 

E poi scrivere in AppKernel File:

new Application\Sonata\UserBundle\ApplicationSonataUserBundle 

ora Questo sta lavorando;)

E questo comando

sonata:easy-extends:generate SonataUserBundle 

creare Bu inserire nel file "App /".

22

fa la seguente procedura prima di eseguire sonata: facile estende: generare

(1) commentare la linea ApplicationSonataUserBundle in config.yaml

mappings: 
       # ApplicationSonataUserBundle: ~ 
       SonataUserBundle: ~ 

(2) sostituire Application \ Sonata \ UserBundle \ Entity \ utente per Sonata \ UserBundle \ Entity \ BaseUser

(3) sostituire Application \ Sonata \ UserBundle \ Entity \ Gruppo di Sonata \ UserBundle \ Entity \ BaseGroup

(4) run-sonata: facile estende: generare "php app/console sonata: facile estende: generare SonataUserBundle -d src"

Ora tornano fase 1, 2 e 3

+0

Grazie! Questa è la vera soluzione al problema, perché dopo aver commentato # ApplicationSonataUserBundle: ~ si otterrà un errore dicendo "Classe" Application \ Sonata \ UserBundle \ Entity \ User "non esiste" e il compositore non può continuare a generare tali classi. Sostituendo il mio nel file config.yml con quelli che hai detto, l'ho risolto e sono riuscito a generare il pacchetto. – Cowwando

1

I suoi passi sono giusto, tranne che ha creato il tuo ApplicationSonataAdminBundle nella cartella "app /", quindi devi tagliare questo ApplicationSonataAdminBundle generato e incollarlo nella cartella "src /" ..

0

Se non vuoi usare "easy-extends" - un altro possibile la soluzione è sovrascrivere le impostazioni predefinite in config.yml

sonata_user: 
    class: 
     user: Acme\UserBundle\Entity\User 
     group: Acme\UserBundle\Entity\Group 
Problemi correlati