【发布时间】:2012-05-30 13:49:41
【问题描述】:
我在使用此代码时遇到了一些问题。我正在尝试为我的数据库创建“高级”搜索。请求两种类型的数据(电影和位置)。该位置完美无瑕,并显示了一个位置附近的所有电影院。但是是否可以通过输入电影的特定名称来做到这一点?
Location Controller:
if params[:allcinemas].checked?
if params[:search].present?
@locations = Location.near(params[:search], 10, :order => :distance)
@title = "Search Results:"
else
@locations = Location.joins(:cinema).order("cinemas.name").all
@title = "Locations of Cinemas"
end
elsif params[:allmovies].checked?
if params[:search].present?
@films = Film.near(params[:search], :order => :title)
else
@films = Film.find(:all, :order => "title")
end
这是位置的 Show.Html.erb
show.html.erb
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search Nearby Cinemas", :name => nil %>
<br><%= radio_button_tag 'allcinemas', 'cinemas', true %> Cinemas
<br><%= radio_button_tag 'allmovies', 'movies' %> Movies
</p>
【问题讨论】:
-
没完全明白你的问题,你能更具体地说明你想做什么吗?
-
当然,我有一个搜索字段,仅根据谷歌搜索最近的电影院(邮政编码,名胜古迹)。我想要实现的是在提交按钮下再提供 2 个选项,允许用户选择(电影或电影院)。简单来说,如果选中了电影单选按钮并且输入了搜索,则根据标题查找电影。否则,找到所有电影。 else if,如果用户检查过电影院,则查找最近的电影院,否则查找所有电影院。结束
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1 rubygems