[RUBY] [rails] Masquer la barre de navigation et les en-têtes uniquement sur la page TOP

Aperçu

Un événement qui a trébuché lors de la production de l'application originale sur rails. La partie entourée par le "cadre rouge" ci-dessous a été appelée comme modèle partiel. スクリーンショット 2020-10-14 21.51.51.png

La page du haut a la structure suivante, et je ne veux pas appeler l'en-tête, alors je me demandais quoi faire. スクリーンショット 2020-10-14 21.47.49.png

Comment appeler un modèle partiel

Je veux afficher tous les en-têtes sauf la première page, donc je rend le modèle partiel avec ʻapplication.html.erb`.

erb:application.html.erb


<!DOCTYPE html>
<html>
  <head>~réduction~</head>
  <body>
    <%= render "shared/header" %> <%#J'appelle l'en-tête ici.
    <%= yield %>
    <%= render "shared/footer" %>
  </body>
</html>

J'ai essayé de diviser le cas par current_page?

Cet article J'ai essayé de ne pas appeler le modèle partiel si la page actuelle n'est pas la première page (root_path).

erb:application.html.erb


<body>
  <% unless current_page?(root_path) %> <%#Si la page actuelle est root avec, ne pas appeler
    <%= render "shared/header" %>
  <% end %>
  <%= yield %>
  <%= render "shared/footer" %>
</body>

Résumé

Lors de la spécification de la page pour appeler le modèle partiel, répertorié sur le contrôleur Lancez une page appelée par JavaScript, il semble y avoir différents moyens Dans mon cas, une seule page est masquée, j'ai donc pensé que cette méthode serait meilleure.

Si vous avez une raison pour laquelle cette méthode n'est pas recommandée, veuillez nous en informer.

Recommended Posts

[rails] Masquer la barre de navigation et les en-têtes uniquement sur la page TOP
[Ruby on Rails] Création de la page de confirmation
Migration des rails Changements de colonne et ainsi de suite.
Bouton [Ruby on Rails] pour revenir en haut
Redimensionner ou masquer Button et EditText placés à l'écran pour chaque page
Bouton [Rails] pour revenir en haut de la page
Ruby on Rails ~ Principes de base de MVC et du routeur ~
Déterminez la page actuelle avec Ruby on Rails
Comment créer un en-tête ou un pied de page une fois et l'utiliser sur une autre page