2012-11-20 44 views
0

我正在爲treehouse.com提供的課程製作一個社交網絡。它在軌道上使用紅寶石。Ruby on rails-如何將用戶ID置於狀態更新樹屋挑戰

我被困在一分鐘,因爲當我點擊發布狀態時,我收到此消息。我試圖用用戶標識替換任何名稱。我添加了所有正確的事情樹告訴你這樣做,但我得到這個錯誤:

NoMethodError在以下狀態#顯示

顯示/Users/lewisfrost/frostbook/app/views/statuses/show.html.erb其中線#5提出:

未定義的方法`如first_name」 13:Fixnum對象

提取的源(圍繞線#5):

5:<%= @ status.user_id.first_name%>

有人可以幫忙嗎?

感謝

回答

1

@status.user_id只是一個數字。改爲用戶@status.user

<%= @status.user.first_name if @status.user %> 
+0

您好,謝謝您的回答。我只是嘗試過,但它仍然不起作用!我現在得到了同樣的事情: NoMethodError在以下狀態#顯示 顯示/Users/lewisfrost/frostbook/app/views/statuses/show.html.erb其中第5行提出: 未定義的方法'FIRST_NAME」爲無:NilClass 5:<%= @ status.user.first_name%> –

+0

這意味着您的狀態沒有與其關聯的用戶,這意味着數據是錯誤的。插入if語句,以防止出現。 – Matzi

1

在您的模型狀態中,您已經編寫狀態 - 用戶關係? 像

class Statuses 
    belongs_to :user 
.... 
end 

,現在你可以鍵入

@status.user.first_name

+0

是的,我正確地遵循了一切,它似乎並沒有工作! –

+0

在您創建(並遷移)名稱爲user_id的狀態中,您的狀態是什麼? – Daniele