我有user
模型,has_one
與user_profile
HAS_ONE協會選擇特定領域
協會,我想從user_profile而不是user_profile
選擇名稱字段。*
我都試過了,
user = User.first
user.user_profile.select(:name)
但是這不起作用。
我有user
模型,has_one
與user_profile
HAS_ONE協會選擇特定領域
協會,我想從user_profile而不是user_profile
選擇名稱字段。*
我都試過了,
user = User.first
user.user_profile.select(:name)
但是這不起作用。
更新:
看來,該軌道處理另一個方向和一個一對一的連接方式不同。你有兩個選擇:
1)定義在協會選定的屬性,它總是會選擇那些
has_one :user_profile, :select => [:name, :id]
2)定義在模型中,一個特定的查找,您可以添加select
,像這樣的:
def my_profile
UserProfile.find(self.user_profile_id)
end
....
my_profile.select(:name)
ORIGINAL:
在has_many
方向的情況下,它的工作原理:
我已經試過你的方法在我的代碼,如:
= User.find("admin").article.select(:title).to_sql
它返回正確的SQL:
SELECT title
FROM "articles"
WHERE "articles"."user_id" = 1364
我使用Rails 3.2 .5 – shajin 2012-07-23 12:16:44