2017-07-26 3 views
1

Ich bin auf der Suche nach einer Möglichkeit zum Konfigurieren einer bestimmten ActiveAdmin-Ressource, so dass alle Aktionen ohne ein Layout rendern, während die anderen Ressourcen das Standardlayout beibehalten. (Die Aktionen für diese eine Ressource werden in AJAX-Dialogen gemacht, so dass ich nicht wollen, das Layout, die nur den Hauptinhalt.)Deaktivieren Sie das Layout für eine bestimmte Ressource in ActiveAdmin

Das hat nicht funktioniert:

controller do 
    layout nil 
end 

Ich verwende 1.0.0. Gibt es eine Möglichkeit, dies zu tun?

Antwort

0

Ich glaube nicht, dass Nil hier arbeiten wird. Sie wollen falsch verwenden. Wie in:

layout false 
+0

dies macht das gleiche wie 'Layout nil' –

0

nach this guide, können Sie auch Rails sagen, ohne das Layout zu machen überhaupt:

controller do 
    render layout: false 
end 
+0

Dies löst einen NoMethodError beim Start:' undefined Methode 'leer?' für nil: NilClass' bei 'edelsteine ​​/ actionview-5.0.2/lib/action_view/lookup_context.rb: 212: in 'normalize_name'' –

+0

kann das wahrscheinlich helfen https://github.com/rails/rails/issues/11662 # issementcomment-44742719 – widjajayd

0

Ich denke, dass Niederlagen der Zweck der Verwendung ActiveAdmin, deren primäre Funktion ist zu generieren HTML-Ansichten layout false funktioniert nicht, da ActievAdmin eine eigene Rendering-Ebene über Rails ActionView bereitstellt. Was Sie tun können, ist ActiveAdmin und Rails API in Kombination zu verwenden, wie in Charlie Gleason's popular blog diskutiert.

+0

Ich möchte die Ansichten, ich will nur nicht das Layout. Ich möchte das generierte Formular in einem Dialog verwenden. –

+0

Ich würde immer noch darüber nachdenken (mit Formtastic?) Außerhalb AA. AA verwendet Arbre (ActiveAdmin :: Views :: Pages :: Base und Pages :: Layout), nicht Rails ActionView für das Layout. Vielleicht hilft das Plugin [CustomLayout] (https://github.com/bys-control/activeadmin_custom_layout), aber ich habe es nicht benutzt. –

Verwandte Themen