Questa è una domanda concettuale e non sono stato in grado di trovare la risposta in SO, quindi eccomi qui:Perché utilizzare le variabili di istanza per "collegare" i controller alle viste?
Perché le variabili di istanza vengono utilizzate per connettere controller e viste? Non abbiamo due oggetti diversi di due classi diverse (Controller vs Visualizzazioni). Quindi, quando la vista viene renderizzata, ci troviamo in un contesto diverso, ma stiamo usando le variabili di istanza di un altro oggetto? Non è questo incapsulamento di rottura in qualche modo?
In che modo Rails riesce a eseguire tale corrispondenza da un oggetto a un altro? Clona tutte le variabili istanze del controller alla vista?
@ meggar, in realtà utilizza direttamente le variabili. Vedi 'BasicObject # instance_eval' nei documenti Ruby e vedrai come questo può essere. Controlla anche "Binding". –