在单独的页面上显示搜索结果

时间:2017-08-05 07:41:03

标签: ruby-on-rails ruby postgresql

我的用户的分数取决于搜索参数,我将其显示在结果页面上,但我希望将其显示在他们的个人资料上

我的搜索控制器

@users = User.where(id: @biens.reorder(:user_id).pluck(:user_id)).limit(3)

@users.each do |user|
  user.delai_score = calc_delai_score(user)
  user.score_ventes = result_date_ventes(@biens.group_by(&:user), user)
  user.score_final = calc_final_score(user.score_ventes, user.delai_score, ventes_area_size(@biens.group_by(&:user), user))
end

我的搜索结果视图

<%= u.delai_score %>
<%= u.score_ventes %>/20
<%= u.score_final %>

我想知道如何在个人资料页面上显示他们的分数(来自搜索结果页面的数据),

我的用户有房子, 在搜索后,在位置区域选择房屋并且在params中,我计算用户分数并显示关于用户的数据 我想从结果中获取分数并将其显示在用户个人资料页面上 但我的问题是我不知道如何从结果页面获取分数

2 个答案:

答案 0 :(得分:0)

您想在个人资料页面上显示delay_scorescore_ventesscore_final值吗? 只需在配置文件控制器中设置这些值即可也许是这样的事情:

def show
  @biens = WhateverThisIs...
  @user = User.find ...
  @user.delai_score = calc_delai_score(user)
  @user.score_ventes = result_date_ventes(@biens.group_by(&:user), user)
  @user.score_final = calc_final_score(@user.score_ventes, @user.delai_score, ventes_area_size(@biens.group_by(&:user), @user))
end

答案 1 :(得分:0)

尝试这样的事情:

def search
  ...
  redirect_to user_path(@user, search_key: search_value)
end

然后在您的用户控制器中,您将能够像这样访问它:

 params[:search_key]

另一种选择是将其保存到cookie中