【发布时间】:2014-02-24 11:04:52
【问题描述】:
在我的 Rails 4 应用程序中,我在导航栏中有一个使用 jQuery 自动完成功能的搜索框。我在用户的索引操作中使用它。一切正常,除非他们从下拉列表中单击用户名,我希望它转到他们的个人资料页面。
用户控制器:
def index
if params[:term]
@users = User.order(:name).where("LOWER(name) like ?", "%#{params[:term]}%")
render json: @users.map(&:name)
end
if params[:users_name]
@users = User.search(params[:users_name])
end
end
搜索栏:
<%= form_tag users_path, :method => 'get', :role => 'search', :class => "navbar-form navbar-right" do %>
<div class="form-group has-feedback">
<%= autocomplete_field_tag :users_name, '', users_path, :placeholder => "Search", :required => true, :class => "form-control transition" %><span class="glyphicon glyphicon-search form-control-feedback"></span>
</div>
<% end %>
我的用户路线是基本的,只是
resources :users
用户/index.html.erb:
<div class="row">
<div class="span12">
<% if @users %>
<ol class="list-inline">
<%= render @users %>
</ol>
<% end %>
</div>
</div>
_user.rb:
I have the appropriate file with what I want displayed here as well.
就像我提到的,自动完成工作正常,当我开始输入名称时,用户名将下拉。我遇到的问题是,如果他们开始输入 justin 并且“justin woodlake”是下拉列表之一,他们点击 Justin Timberlake 我希望它转到他的个人资料页面profile_page(@user)
【问题讨论】:
标签: jquery ruby-on-rails autocomplete ruby-on-rails-4