1
好,我有以下型號定義:測試「應該得到指數」得來未定義的方法錯誤
class Role < ActiveRecord::Base
attr_accessible :name
has_many :users
validates :name, presence: true
validates :name, uniqueness: true
end
而且
class User < ActiveRecord::Base
attr_accessible :abv, :first_name, :full_name, :last_name, :role_id
has_many :defects
belongs_to :role
validates :first_name, :last_name, :full_name, :abv, :role_id, presence: true
validates :full_name, :abv, uniqueness: true
end
最近,我改變了看法用戶「指數」顯示用戶。將role_id字段添加到user.role.name以使視圖更友好!這很好!但是運行耙測試時users_controller_test通過以下錯誤:
1)錯誤: test_should_get_index(的UsersControllerTest): ::的ActionView ::模板錯誤:未定義的方法'名」的零:NilClass
搜索後博客中,我發現擦除並重新創建測試數據庫的工作,一個人,並從
get :index
改變控制器中的「應該得到指數」測試 GET引用:指數:user.role_id => 1 #被強制爲已知價值
但是我所做的沒有改正測試失敗。我在這裏錯過了什麼,這可能是測試夾具中的數據如何定義的問題,還是我缺少核心軌道概念?
一如往常,由於提前,
理查德