Si vous utilisez uniquement des variables locales dans une partie?
-
05-09-2019 - |
Question
L'utilisation de variables locales paraît souhaitable dans une partie qui pourrait être utilisé à l'échelle application afin d'éviter les dépendances à travers l'application.
Mais dans un seul contrôleur, il semble acceptable pour référencer les variables d'instance que vous connaissez seront disponibles dans toutes les actions qui utilisent le partiel.
Si vous faites cela, il semble y avoir un risque, cependant, qu'une action particulière peut se changer à ne plus fournir la variable d'instance à son point de vue. Ensuite, la partie cesse de fonctionner. Je ne sais pas si cela est vraiment un problème, cependant, car une vue régulière rencontrerait le même risque.
Est-il important si vous faites référence à des variables d'instance dans une partie?
La solution
Vous êtes sur un rouleau aujourd'hui! : -)
Vous pouvez passer des variables dans la partielle :locals
pour garder tout cela agréable et propre. Par exemple,
render :partial => 'my_partial', :locals => { :some_variable => some_variable, :some_important_value => 'an important point!' }
Ces variables sont alors disponibles dans la vue partielle:
<%= some_variable %>
<%= some_important_value %>
Cependant, il n'y a rien de mal à utiliser spécifiquement les variables d'instance dans votre partials.
Autres conseils
Je ne recommande l'utilisation des variables d'instance tant que la partie n'est pas partagée, car cela peut se confondre très vite;)