首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对于简单搜索表单,没有与post匹配的路径

对于简单搜索表单,没有与post匹配的路径
EN

Stack Overflow用户
提问于 2014-11-23 02:49:31
回答 2查看 848关注 0票数 1

列出模型代码

代码语言:javascript
复制
def self.search(search)
    search_condition = "%" + search + "%"
    find(:all, :conditions => ['franchisename LIKE ? or longdescription LIKE ?', search_condition, search_condition])
end

家庭控制器

代码语言:javascript
复制
  def search
    @results = Listing.search params[:search]
  end

路由

代码语言:javascript
复制
 get 'home/search'

主页/index.html.erb搜索表单

代码语言:javascript
复制
<%= form_tag :controller => 'home', :action => 'search', :method => 'get' do %>
  <%= text_field_tag :search, params[:search], :id => 'indexsearch' %>
  <%= submit_tag "Search", :name => nil %> 
<% end %>

主页/search.html.erb搜索结果

代码语言:javascript
复制
<%= @results.each do |result| %>
<%= result.franchisename %>
<%= result.shortdescription %>
<% end %>

错误:没有与帖子"/home/search“匹配的路由

我只是想要它,这样我就可以在主页上输入我的搜索查询,然后在提交后,它会重定向到包含结果的结果页面。我最初遵循了一个指南,但它可能已经过时了,尽管它没有说。会很感谢你的帮助的!

EN

回答 2

Stack Overflow用户

发布于 2014-11-23 03:14:07

我只是用下面的方式定义了form_tag。

代码语言:javascript
复制
<%= form_tag url_for(:controller => 'home', :action => 'search'), :method => 'get' do %>

希望你的问题能得到解决!

票数 1
EN

Stack Overflow用户

发布于 2014-11-23 03:19:39

也许您应该在路由中指定控制器和操作,如下所示:

代码语言:javascript
复制
 get 'home/search' => 'home#search' 

希望这能解决你的问题!

干杯!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27081129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档