0

我有这些作为模型和列。

  • 用户(表)
  • 用户配置文件(表)
    • 总点(列)

我想在数组中显示用户的排名,当它按关联的表列排序时,称为total_point

所以我尝试了这个,但它返回了错误。

我该如何解决这个问题?

application_helper(将用户作为参数传递)

def user_rank(user)   
    "<i><b>#{user.user_profile.total_point}#{User.confirmed.joins(:user_profile).order('user_profiles.total_point DESC').index(user)}</b></i>".html_safe
end 

模型/用户.rb

scope :confirmed, where("confirmation_token" => nil)
has_one: user_profile

更新:

模型/user_profile.rb

belongs_to: user

错误

ActionView::Template::Error (wrong number of arguments (1 for 0)):
29:  <td class="border"> <%= user_rank(@user) %></td>
4

0 回答 0