Ruby on Rails: si la page en cours? est page d'accueil, ne pas afficher le formulaire
Je veux pas afficher un formulaire, mais seulement si la page n'est PAS la page d'accueil
C'est ce que j'ai jusqu'à présent...
J'ai ma configuration de l'itinéraire:
root 'projects#index'
Mon point de vue:
<% if !current_page?(url_for(:controller => 'projects', :action => 'index')) %>
show some stuff
<% end %>
Cela ne montre pas si l'url est localhost:3000/projects
Mais cela montre que, si son localhost:3000
Donc j'ai besoin de quelque sorte assurez-vous que si c'est la page d'accueil, il ne sera pas affiché. Aussi, j'ai les paramètres de recherche pour la page d'accueil, et je ne veux pas de montrer si ses comme localhost:3000/projects?search=blahblahblah
Si vous avez à vérifier si la page courante est la racine de la page, alors il y a quelque chose de bizarre se passe dans votre partielle/structure du modèle.
Pas de. Je voulais quelque chose de différent. Si vous avez à vérifier dans un partiel ou modèle "Est-ce que partielle rendu de la racine de la page?", alors vous avez probablement créé un drôle de rendu partiel. Vous ne devriez pas besoin de vérifier si c'est la racine de la page. Si vous avez, alors je soupçonne une odeur de code.
localhost:3000/projects
est ma page d'index. de la racine vers projects#index
, de sorte qu'il fonctionne pour les deuxPas de. Je voulais quelque chose de différent. Si vous avez à vérifier dans un partiel ou modèle "Est-ce que partielle rendu de la racine de la page?", alors vous avez probablement créé un drôle de rendu partiel. Vous ne devriez pas besoin de vérifier si c'est la racine de la page. Si vous avez, alors je soupçonne une odeur de code.
OriginalL'auteur hellomello | 2015-08-04
Vous devez vous connecter pour publier un commentaire.
Utiliser le
root_path
helper:ou:
Également, selon le
documentation
, pas besoinurl_for
méthode:localhost:3000/projects
il va le montrer. Donc, si il y a une et/ou l'opérateur pour root_path et ce que j'ai, alors je pense que vais couvrir à la foisparce que
localhost:3000/projects
n'est pasroot_path
, spectacle pleinroutes.rb
, je crois que vous pourrez utiliser*_path
aides pour lacurrent_page?
helper.localhost:3000/projects
est à ma page d'accueil, j'ai donc besoin de faire les deuxlocalhost:3000
etlocalhost:3000/projects
ajouter
||
(ou) les instructions pour vos conditionsunless current_page?('/') || current_page?('/projects')
, vous pouvez également définir un seulroot
page.<% unless current_page?('/') || current_page?('/projects') %>
cela a fonctionné! MerciOriginalL'auteur Зелёный