Für eine before_action
in Rails-Engine Application Controller, wenn ein Benutzer eine Aktion von der Engine anfordert, ist die before_action
ausgeführt vor routes.rb
und models
Motor geladen werden (oder einige Prozedur/Werkzeug, die uns die ausführende Reihenfolge herausfinden. Debug scheint die routes.rb und Modelldefinitionen übersprungen werden)? Wird before_action im Application Controller ausgeführt, bevor routes.rb und Modelle geladen werden?
class ApplicationController < ApplicationController
before_action :setup_some_variable
..........
end
Der Zweck setup_some_variable
ist Variablen zu setzen, die in routes.rb
und models
im Motor verwendet werden.
Oder routes.rb
oder models
eines Motors werden geladen, wenn main_app
gestartet wird. Hier die wichtigsten App `routes.rb‘ Montage einer Rails-Engine:
Myapp::Application.routes.draw do
mount MyEngine::Engine => "/my_engine"
end
Das Boot-Dokument ist eine gute Referenz. 'Modelle werden mit dem Autoloader geladen, so dass sie zum ersten Mal in Ihrem Code referenziert werden. 'Was ist normalerweise definiert, wenn ein Modell zum ersten Mal referenziert wird? Normalerweise verweisen nur die Controller auf das Modell mit Aktionen wie Index, Neu und Bearbeiten. – user938363
Sind Routen und Modelle auch einmal in der App geladen und werden viele Male später benutzt? – user938363