Dieser Inhalt wurde automatisch aus dem Ukrainischen übersetzt.
ivar - ist eine Abkürzung für instance variable (Instanzvariable). In Ruby wird sie mit @ vor dem Namen geschrieben, zum Beispiel:
@user = User.find(params[:id])
Wie funktioniert das?
In Ruby hat jedes Objekt seine eigene Menge an Instanzvariablen. Das heißt, @user im Controller und @user in der Ansicht (view) - das ist dieselbe Variable innerhalb einer Anfrage, aber sie gehört einer bestimmten Instanz des Controllers.
Rails macht automatisch alle @-Variablen aus dem Controller im entsprechenden Template verfügbar.Controller:
# app/controllers/users_controller.rb def show @user = User.find(params[:id]) end
und die gleiche Ansicht:
<!-- app/views/users/show.html.erb --> <h1><%= @user.name %></h1>
Kurz gesagt:
- @ivar = Instanzvariable = Instanzvariable eines Objekts
- Sichtbarkeit innerhalb einer Instanz
- Rails überträgt automatisch @-Variablen vom Controller zur Ansicht
- Wird verwendet, um Daten zwischen den MVC-Schichten zu übertragen
Dieser Beitrag hat noch keine Ergänzungen vom Autor.