私はUser has_one Shop&を持っていShop has_many Branchesます。
私がこれを行うとき:
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
@shop = @user.shop
@branches = @shop.branches
end
...
@user&@shopインスタンス変数はビューで機能しますが、@branchesエラーが発生します:
undefined method `branches' for nil:NilClass
Application Trace | Framework Trace | Full Trace
app/controllers/users_controller.rb:13:in `show'
ただし、コントローラーで破棄@branchesすると:
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
@shop = @user.shop
end
...
....そしてビューでこれを使用します:
@shop.branches
....できます!@shop.branchesビューで常に使用するのはちょっと面倒なので、単に使用することを好みます@branches。