2014-04-16 8 views
7

Ich habe die erweiterte Vorlage heruntergeladen, extrahierte es und änderte die Stammdokumente für das Back-End und das Front-End, aber ich kann nicht scheinen, herauszufinden, wie Gii arbeiten zu leisten die Crud-Operationen.bekommen Gii zu arbeiten auf Yii 2.0

es gibt require und require-dev field in der composer.JSON ich habe gii in beiden und jeder separat ohne glück enthalten.

Ich habe auch versucht, die Vorlage durch Composer zu bekommen, und während der Installation sah ich gii als installiert, konnte aber immer noch nicht zur Arbeit.

das ist, wo ich meine Yü Vorlage bekam: https://github.com/yiisoft/yii2-app-advanced

+0

und wie nennt man gii? Es muss standardmäßig funktionieren. – Alex

+0

Haben Sie das gelöst? Ich habe genau das gleiche Problem. Der einzige Unterschied ist, dass ich alles über Composer installiert habe. – synapze

+0

@synapze ja ich tat, tut mir leid, ich habe keine Antwort zur Verfügung gestellt. Ich hatte diese 'Module' => ['gii' => 'yii \ gii \ Module'], die in meinem Backend/config/main.php fehlen. mein Projekt ist im Backend, wenn es anderswo ist, setze es entsprechend. – tareq

Antwort

7

Schritt 1: In der erforderlich-dev von composer.json

"yiisoft/yii2-gii": "*" 

Schritt 2 folgende Zeile: Aktualisieren Sie Ihren Komponisten. Schritt 3: Fügen Sie folgende Zeile zu Ihrer Frontend/config/main.php Datei hinzu. Sie nicht, diese incude ..........

'modules' => [ 
    ............ 
    'gii' => [ 
     'class' => 'yii\gii\Module', //adding gii module 
     'allowedIPs' => ['127.0.0.1', '::1'] //allowing ip's 
    ], 
    ........... 
    ] 

Schritt 4: Gehen Sie Wenn Sie Ihre saubere URL aktiviert haben, dann gehen Sie zu

project_name/frontend/web/gii 

wenn nicht, dann zu

project_name/frontend/web/index.php?r=gii 

können Sie folgen dem Link yii2_gii

+0

Ich habe dies tun, aber ich bekomme immer 'Ungültige Konfiguration - yii \ base \ InvalidConfigException Die Konfiguration für die" Module "-Komponente muss ein" Klasse "-Element enthalten.' – shorif2000

+0

Wann generieren Sie Ihre Anwendung vor oder nach dem yii2-Release? – Kshitiz

2

auch, versuchen Sie dies, wenn gii funktioniert immer noch nicht:

Dies sollte vom yii-Team gut dokumentiert werden!

Nachdem ich den init Befehl, in /frontend/config/main-local.php, fand ich:

if (!YII_ENV_TEST) { 
    // configuration adjustments for 'dev' environment 
    $config['bootstrap'][] = 'debug'; 
    $config['modules']['debug'] = 'yii\debug\Module'; 

    $config['bootstrap'][] = 'gii'; 
    $config['modules']['gii'] = 'yii\gii\Module'; 
} 

Meine App ist in dev Modus und te oben Erklärung, stoppt meine gii zu arbeiten, also ... Kommentar die Zeile

17

So erhalten Sie Gii von einem Remote-Server für eine erweiterte Setup-Vorlage.

In der Frontend-Konfigurationsdatei. Zum Beispiel:

/frontend/config/main-local.php 

Fügen Sie den folgenden Code ein:

if (!YII_ENV_TEST) { 
    // configuration adjustments for 'dev' environment 
    $config['bootstrap'][] = 'debug'; 
    $config['modules']['debug'] = 'yii\debug\Module'; 

    $config['bootstrap'][] = 'gii'; 
    $config['modules']['gii']=[ 
     'class' => 'yii\gii\Module', 
     'allowedIPs' => ['*'], 
    ]; 
} 

Der interessante Teil ist die Gii array, die so modifiziert wurde.

+0

Ich habe dies tun, aber ich bekomme immer 'Ungültige Konfiguration - yii \ base \ InvalidConfigException Die Konfiguration für die" Bootstrap "-Komponente muss ein" Klasse "-Element enthalten. – shorif2000

+0

@bonez Können Sie Ihre Konfigurationsdatei einfügen? – girish

+0

finden Sie unter http://stackoverflow.com/questions/29260299/yii2-access-denied-to-gii – shorif2000

2

Wie beschrieben in the Docs Sie die erlaubten IPs in der /frontend/config/main-local.php einzustellen haben:

if (!YII_ENV_TEST) { 
     ... 
     $config['bootstrap'][] = 'gii'; 
     $config['modules']['gii'] = [ 
     'class' => 'yii\gii\Module', 
     'allowedIPs' => ['127.0.0.1', '::1', '192.168.*.*'] 
     ]; 
    } 

Wenn Sie Ihr /Frontend/config/main geändert haben.php, wie dies für ziemlich URLs:

return [ 
    ... 
    'components' => [ 
     ... 
     'urlManager' => [ 
      'class' => 'yii\web\UrlManager', 
      'enablePrettyUrl' => true, 
      'showScriptName' => false 
     ], 
     ... 
    ]; 

Sie können auch anrufen gii mit der URL

yourVM.local/gii 

(Mit yourVM.local Punkt auf Ihrem Frontend-Modul in der Hosts-Datei.)

0

Ich musste das Element urlManager auskommentieren (das Deaktivieren hübscher Urls) in 'Komponenten' in der entsprechenden Konfigurationsdatei (eigentlich standardmäßig auskommentiert).

backend/config/main.php 

Vor ziemlich Urls Deaktivieren ich die Gii Seite geladen werden könnte, aber als attemtping einen der Generator Seiten (Controller, Modell, etc.) zu laden, ich auf die Startseite umgeleitet wurde.

Verwandte Themen