2

Ich habe gelernt, Rails und scheint wie Bedenken sind eine Möglichkeit, um Fett Modelle austrocknen und Methoden nach Modellen verteilbar machen. Ich bin jedoch verwirrt, warum Aufrufe/Teilansichten Zugriff auf diese Methoden haben. Sollte das MVC-Modell nicht alle modellbezogenen Dinge durch den Controller gehen lassen und dann der Ansicht übergeben werden. Es fühlt sich so an, als würde der Zugriff auf Ansichten direkt auf Modellprobleme übertragen werden. Warum habe ich keinen Zugriff auf diese Methoden in der Rails-Konsole?Wie erhalten Rails-Ansichten Zugriff auf Bedenken?

Antwort

1

Ein Modellbetrug kann als eine Möglichkeit angesehen werden, ein Modell mit vielen Methoden aufzuteilen. Es ist möglich, gemeinsame Methoden zwischen Modellen zu verwenden, aber auch den Modellcode auszudünnen.

Sobald Sie die Bedenken einschließen, werden alle Bedenkenmethoden in das Modell gemischt und sind daher überall verfügbar, wo die 'Basismodell' -Methoden sind.

+0

Also wäre es richtig zu sagen, dass Ansichten Zugriff auf Modellmethoden haben, weil der Controller es aus dem Modell bekommt und es an die Ansicht weitergibt, um sie bei Bedarf zu verwenden? – stackjlei

+1

Ja das ist richtig. Eine "Instanzvariable", dh: beginnend mit '@' ist normalerweise eine Instanz eines Modells, das vom Controller an die View gesendet wird. – ardochhigh

Verwandte Themen