我已经实现了用户模型(Elasticsearch使用Chewy gem)的搜索。从搜索结果链接到模型元素(Chewy,Rails)
的意见/搜索/ search.html.erb:
<%= form_tag search_path, method: "get" do %>
<%= label_tag(:q, "Search by name/ surname/ email:") %>
<%= text_field_tag(:q) %>
<%= submit_tag("Search") %>
<% end %>
<% @results.each do |r| %>
<%= r.name %>
<%= r.surname %>,
<%= r.email %>,
<% end %>
的routes.rb:
devise_for :users
resources :users, only: [:show], controller: :profiles
我需要的是一个链接添加到每个搜索结果行的用户。 (如何连接与用户页面嚼用户索引)
更新:
我改变了最后一段中search.html.erb到:
<% @results.each do |r| %>
<%= link_to r.name, user_path(r) %>
<%= r.surname %>,
<%= r.email %>,
<% end %>
搜索结果现在是可以点击的,但我得到以下错误:
的ActiveRecord :: RecordNotFound在ProfilesController#秀 找不到用户与 'ID'=#UsersIndex ::用户:0x007fa1050ebed0>
我profiles_controller.rb:
class ProfilesController < ApplicationController
skip_before_action :authenticate_user!
def show
@user = User.find(params[:id]) //this line gets an error
end
end
您能澄清您的问题吗?这是否与耐嚼或弹性搜索有关?你只需要知道如何在视图中创建链接? – trh
na id没有。它只是一个标准的轨道问题,imo –
标准轨道问题,对 – electrify