Dans rails> 4.0.0, les générateurs créent des opérations CRUD avec before_action
not before_filter
. Il semble faire la même chose. Alors, quelle est la différence entre ces deux?
ruby-on-rails
ruby
ruby-on-rails-4
crud
freemanoid
la source
la source
C'est juste une différence de syntaxe, dans l'application rails, il y a CRUD, et sept actions essentiellement par index de nom , nouveau , créer , afficher , mettre à jour , éditer , détruire .
Rails 4 permet aux développeurs de changer la syntaxe avant le filtre en avant l'action .
méthode d'appel before_action avant les actions que nous déclarons, comme
set_event est une méthode qui appellera toujours avant show, update, edit et destroy.
la source
C'est juste un changement de nom.
before_action
est plus spécifique, car il est exécuté avant une action.la source
before_filter / before_action: signifie tout ce qui doit être exécuté avant l'exécution de toute action.
Les deux sont les même. ils sont juste alias l'un pour l'autre car leur comportement est le même.
la source
Pour comprendre quelle est la différence entre before_action et before_filter, nous devons comprendre la différence entre action et filtre.
Une action est une méthode d'un contrôleur vers laquelle vous pouvez router. Par exemple, votre page de création d'utilisateur peut être acheminée vers UsersController # new - nouvelle est l'action dans cette route.
Les filtres s'exécutent en fonction des actions du contrôleur - avant, après ou autour d'eux. Ces méthodes peuvent interrompre le traitement de l'action en redirigeant ou en configurant des données communes vers chaque action dans le contrôleur.
la source