Thema und Layout im yii-Framework

8

Ich bin ein Neuling in Yii Framework und erstelle ein CRM, das auf Modulen basiert. Mit verschiedenen Tutorials kann ich ein eigenes Thema erstellen, aber jetzt bin ich an einem Punkt festgefahren.

In meinem Thema bleibt der obere <nav> und linke <nav> der gleiche in der ganzen App, bis der Benutzer angemeldet ist. Deshalb habe ich ihn zu meinem main gemacht .php , aber auf der Anmeldeseite gibt es keine Schaltflächen zum Anzeigen, nur ein einfaches Anmeldeformular mit 2 Textfeldern .

Wie kann ich dieses Formular in meiner Anwendung mithilfe von benutzerdefinierten Designs implementieren?

Ich habe versucht, ein Layout in dieser bestimmten Aktion zu definieren, aber nicht erfolgreich. Jede Hilfe wäre willkommen.

    
Shayan Husaini 25.04.2012, 10:35
quelle

2 Antworten

13

Die Verwendung eines benutzerdefinierten Layouts für Ihre Ansicht ist der richtige Weg. Sie können das Layout entweder in der Controller-Aktion oder in der Ansicht festlegen.

%Vor%

Beachten Sie, dass die Standardlayouts column1.php und column2.php auch die Layoutdatei main.php verwenden.

    
schmunk 25.04.2012, 11:17
quelle
7

Probieren Sie dies Schritt für Schritt aus:

  1. Neues Thema erstellen

    Sie können ein neues Thema erstellen und dieses zum Verzeichnis hinzufügen Application_Root / themes .

    Sehen Sie sich das Verzeichnis themes / classic an, um eine Vorstellung von der Struktur des Verzeichnisses zu erhalten. Die wichtige Datei (in diesem Stadium) ist: - Application_Root / themes / views / layouts / main.php

  2. Passen Sie Ihre Themeninhalte an

    Kopieren Sie die css, image, js Dateien usw. in das richtige Verzeichnis und ändern Sie die Datei main.php nach Ihren Wünschen. Zum Beispiel, wenn deine main.php sagt

    & lt; link href="css / mystyle.css" & gt;

    Dann haben Sie eine Datei Application_Root / css / mystyle.css

  3. Erstellen Sie den Inhaltsplatzhalter.

    Irgendwo in deiner main.php gibt es einen Platzhalter für dynamischen Text, der mit angegeben wird.

    & lt;? php echo $ content; ? & gt;

  4. Sagen Sie yii, das Thema zu verwenden. Ändern Sie die Datei Application_Root / protected / config / main.php , indem Sie die folgende Zeile direkt vor der letzten Zeile (mit der schließenden Klammer) hinzufügen.

    'Thema' = & gt; 'Umfrage-Hub'

  5. Erstellen Sie die Layout-Platzhalter.

    Erstellen Sie ein HTML-Segment, das in den $ contents-Teil von main.php geschrieben wird. Nennen Sie es zum Beispiel one_column.php. Der Dateipfad lautet daher Application_Root / themes / views / layouts / one_column.php Erstellen Sie in dieser Datei, in der der dynamische Text platziert werden soll, einen Platzhalter.

    & lt;? php echo $ content; ? & gt;

  6. Sagen Sie Yii, das Layout zu verwenden.

    Fügen Sie in der Datei Application_Root / protected / components / Controller.php die Layoutvariable hinzu oder ändern Sie sie wie folgt:

    public $ layout = '// layouts / one_column.php';

  7. Aktualisieren Sie die Seite

crafter 29.04.2012 09:21
quelle

Tags und Links