私は現在、Michael Hartlのrailstutorial.orgを見ており、Google/Stackoverflowが応答していないと思われる質問に遭遇しました。このチュートリアルでは、show.htmlに<%= @user.name %>, <%= @user.email %>
を入れてユーザー情報を表示しています。 erb。コントローラーでは、@user = User.find(params[:id])
の方法をshow
と定義しています。コントローラで使用されているため、ビューで使用できないのはなぜですか?
私は理解していないのは、次のコードが同じ結果を生成しない理由です(コントローラーからshow
メソッドを削除して、ビューにすべてのコードを配置しようとしました)。これらはshow.html.erbする私の版です:
<%= @user.find(params[:id]).name %>, <%= @user.find(params[:id]).email %>
それは、 "未定義のメソッド` nilのために「が見つかり:NilClass" を返します。
偉大な応答、ありがとうございます。ええと、私はMVCの方法をよりよく理解するためになぜ背後にあるのかという理由だけでは不思議ではないと理解しました。 – michaelsking1993