2011-06-20 32 views

回答

1

如果您使用User.find而不是User.find_by_id,然後對此執行.name,則應該接收您的輸出。

@user = User.find(1) 
@user.name 

但是由於沒有看到您的整個數據庫,可能是因爲該字段不存在,您只是得到一個no方法。在這種情況下,您應該相應地更改方法名稱:

@user.name # to -> 
@user.first_name # or whatever the field is actually called 
1

嘗試

@user = User.find(1)

然後

@user.name 

find_by_id返回多個記錄,所以你必須做

@user.first.name 

如果使用find_by_id

+0

作爲<%= @ user.name%>,我可以直接在視圖中將user @ user.name顯示出來嗎? –

+0

如果您在控制器中將其定義爲'@ user',則可以。 – changelog

+2

我認爲_find_by_id_只返回一條記錄。對於多個記錄,有_find_all_by_id_ –