2012-12-15 70 views
1

我有兩個型號:UserUser_profile如何啓用嵌套搜索太陽黑子solr?

在User.rb,用戶has_one :user_profile

在User_profile.rb中,User_profile belongs_to :user

然後我有users_controller和它的index.html.erb。 因此,我將其添加到我的用戶模型,以便通過嵌套列進行搜索,但是當我嘗試重新索引時顯示錯誤。我怎樣才能解決這個問題?

未定義的方法`user_profiles'爲#

型號/ user.rb

.... 
    searchable do 
    text :user_profile_nickname do 
     user_profiles.map { |user_profile| user_profile.nickname } 
    end 
    end 
.... 

回答

4

您已經在user.rb文件中給出用戶has_one :user_profile。所以它不能是對象的集合,而是它的一個成員對象。所以你不能在你的用戶模型中調用user_profiles.map { |user_profile| user_profile.nickname }

如果你想調用write如下:

searchable do 
    text :user_profile_nickname do 
    user_profile.nickname 
    end 
end 

以上將肯定工作。如果不工作,請告訴我。

+0

謝謝。這工作完美! – HUSTEN

+0

非常歡迎親愛的。前進 – VenkatK