[RUBY] [Schienen] Navigationsleiste und Überschriften nur auf der TOP-Seite ausblenden

Überblick

Ein Ereignis, das während der Produktion der Original-App auf Schienen gestolpert ist. Der Teil, der von dem "roten Rahmen" unten umgeben ist, wurde als Teilschablone bezeichnet. スクリーンショット 2020-10-14 21.51.51.png

Die obere Seite hat die folgende Struktur, und ich möchte den Header nicht aufrufen, also habe ich mich gefragt, was ich tun soll. スクリーンショット 2020-10-14 21.47.49.png

So rufen Sie eine Teilvorlage auf

Ich möchte alle Header außer der oberen Seite anzeigen, also rendere ich die Teilvorlage mit application.html.erb.

erb:application.html.erb


<!DOCTYPE html>
<html>
  <head>~Kürzung~</head>
  <body>
    <%= render "shared/header" %> <%#Ich rufe hier den Header auf.
    <%= yield %>
    <%= render "shared/footer" %>
  </body>
</html>

Ich habe versucht, den Fall durch current_page zu teilen.

Dieser Artikel Ich habe versucht, die Teilvorlage nicht aufzurufen, wenn die aktuelle Seite nicht die oberste Seite ist (root_path).

erb:application.html.erb


<body>
  <% unless current_page?(root_path) %> <%#Wenn die aktuelle Seite root ist, rufen Sie nicht auf
    <%= render "shared/header" %>
  <% end %>
  <%= yield %>
  <%= render "shared/footer" %>
</body>

Zusammenfassung

Wenn Sie die Seite angeben, auf der die Teilvorlage aufgerufen werden soll, auf dem Controller aufgeführt Feuern Sie eine von JavaScript aufgerufene Seite ab, es scheint verschiedene Mittel zu geben In meinem Fall ist nur eine Seite ausgeblendet, daher dachte ich, diese Methode wäre besser.

Wenn Sie einen Grund haben, warum diese Methode nicht empfohlen wird, teilen Sie uns dies bitte mit.

Recommended Posts

[Schienen] Navigationsleiste und Überschriften nur auf der TOP-Seite ausblenden
[Ruby on Rails] Erstellung der Bestätigungsseite
Schienenmigration Spaltenänderungen usw.
[Ruby on Rails] Schaltfläche, um nach oben zurückzukehren
Ändern oder Ausblenden der Schaltfläche und des EditText auf dem Bildschirm für jede Seite
Schaltfläche [Schienen], um zum Anfang der Seite zurückzukehren
Ruby on Rails ~ Grundlagen von MVC und Router ~
Bestimmen Sie die aktuelle Seite mit Ruby on Rails
So erstellen Sie eine Kopf- oder Fußzeile einmal und verwenden sie auf einer anderen Seite