Reskinning ActiveAdmin mit Bootstrap

8

Ich möchte ActiveAdmin mithilfe eines Bootstrap-Vorlagenmotivs neu einblenden. Allerdings muss ich das Layout der Seite anpassen.

Ist es möglich, das Layout von ActiveAdmin so zu ändern, wie ich es möchte? Es sieht anders aus als normale Rails-Konventionen - ich würde es lieber mit einer normalen Vorlage machen und dann die Teile des Inhalts, die ich brauche, in der Reihenfolge, in der ich sie benötige, herausbringen.

    
nocache 17.07.2013, 02:31
quelle

4 Antworten

10

Ich habe schon einmal etwas Ähnliches gemacht. Schauen Sie sich diesen Gist Ссылка

an

Im Wesentlichen patchen Sie den aktiven Admin-Basis-Controller, um Ihr neues Layout zu verwenden, indem Sie ihre :determine_active_admin_layout -Methode überschreiben

%Vor%

Dann können Sie in Ihrem active_admin_reskin -Layout Methoden auf dem Arbre view_factory like so

aufrufen %Vor%

Im Wesentlichen ( Ссылка ) habe ich einen kleinen View-Helfer erstellt, damit ich diese Methoden einfach aufrufen kann.

Sehen Sie sich den aktiven Quellcode an, um zu sehen, welche Methoden für verschiedene Arbre-Dokumente verfügbar sind, insbesondere hier: Ссылка

Sobald das Markup so geändert wurde, wie Sie es möchten, können Sie @include 'bootstrap' in Ihre active_admin.css.scss -Datei einfügen, die der Generator erstellt hat, und verrückt werden.

    
BigFive 17.07.2013, 03:40
quelle
1

Eine einfache Antwort wäre

@import "bootstrap";

in active_admin.css.scss

Offiziell wird es vorerst nicht Ссылка

unterstützt     
Axil 19.04.2014 16:32
quelle
0

Je nachdem, welche Version von AA Sie verwenden.

(0.6.0 & lt; Festschreibung: ec9996406df5c07f4720eabc0120f710ae46c997):

Fügen Sie Ihre scss ein, aber kapseln Sie Ihre css-Selektoren in der Gruppe body.active_admin ein. Außerdem ist die Spezifität wichtig. Wenn Sie also das Standard-Styling von AA überschreiben möchten, müssen Sie möglicherweise sicherstellen, dass Sie den vollständigen Selektor überschreiben, um das gewünschte Verhalten zu erhalten.

Wenn Sie diese Stile finden möchten, um sie zu überschreiben, sehen Sie sich die Stylesheets von AA an um zu sehen, wie sie die Website als Standard festlegen. Fügen Sie einfach Ihren benutzerdefinierten Stil hinzu, nachdem das AA-Stylesheet enthalten ist.

Nach dem Festschreiben: ec9996406df5c07f4720eabc0120f710ae46c997

Der Namensraum von Stylesheets wurde kürzlich entfernt, und ich habe die Implikation noch nicht gründlich getestet.

    
Josh Kovach 17.07.2013 03:39
quelle
0

Die von BigFive akzeptierte Antwort funktionierte für mich am Anfang, verursachte aber einige Fehler beim Rendern von benutzerdefinierten Teiltönen oder beim Rendern von Fehlern in Formularen.

Inspiriert von seinem Ansatz wechselte ich zu den einzelnen Methoden, mit denen AA das Layout dynamisch generiert (da AA keine statische Layoutdatei verwendet, die einfach geändert werden kann).

Sie können die verfügbaren Methoden im Quellcode finden, aber es ist ziemlich selbsterklärend und beginnt in html-Element .

Beispiel:

Um einige Klassen hinzuzufügen und die Elemente neu zu organisieren:

Sie können Ihren Stil angeben:

assets / stylesheets / active_admin.css.scss

Und Ihre HTML-Beschreibung in:

config / initializers / active_admin_patch.rb:

%Vor%     
justinsAccount 17.08.2014 07:59
quelle

Tags und Links