Puis-je obtenir le nom de l'actuel contrôleur de la vue?
Est-il un moyen de comprendre ce que le régulateur de courant est de l'intérieur de la vue?
Pour un exemple de pourquoi je voudrais savoir ceci: si plusieurs contrôleurs de partager la même mise en page, j'ai peut-être un rôle dans la mise en page ERB fichier dans lequel je souhaite mettre en avant la page actuelle de l'élément de menu basé sur le contrôleur.
Peut-être que c'est une mauvaise approche. Si oui, quel est le plus préféré façon de le faire?
Je suis intéressé de savoir pour obtenir le nom de l'actuel contrôleur de toute façon, si.
(Évidemment, je pourrais faire quelque chose comme @controller_name = 'users'
dans chaque contrôleur; mais c'est le genre de chose Rails serait l'ai déjà fait en coulisses. Donc, je me demandais simplement si il y a un moyen intégré.)
Vous devez vous connecter pour publier un commentaire.
controller_name
contient le nom du contrôleur utilisé pour servir la vue actuelle.params
en vue. Veuillez utilisercontroller_name
au lieuAussi, dans les Rails Guides, il dit:
ActionController Paramètres
Donc, disons que vous avez une classe CSS
active
, qui doit être inséré dans n'importe quel lien dont la page est actuellement ouvert (peut-être de sorte que vous pouvez le style différemment) . Si vous avez unstatic_pages
contrôleur avec unabout
action, vous pouvez ensuite mettre en évidence le lien comme si de votre point de vue:Admin::Orders
puiscontroller_name
etparams[:controller]
sera"orders"
et"admin/orders"
respectivement.Admin::UsersController
a fait uncontroller_name
deusers
et uncontroller_path
deadmin/users
dans les Rails 4.1.0.référence
controller_path
contient le chemin d'accès du contrôleur utilisé pour servir la vue actuelle. (c'est à dire:admin/settings
).et
controller_name
contient le nom du contrôleur utilisé pour servir la vue actuelle. (c'est à dire:settings
).