2013-03-25 68 views
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 #被強制爲已知價值

但是我所做的沒有改正測試失敗。我在這裏錯過了什麼,這可能是測試夾具中的數據如何定義的問題,還是我缺少核心軌道概念?

一如往常,由於提前,

理查德

回答

0

如果與協會合作,您可以通過定義兩個不同的燈具之間的參考節點解決這個問題。

相關問題