Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 提交后Rails表单路由到静态URL_Ruby On Rails_Forms - Fatal编程技术网

Ruby on rails 提交后Rails表单路由到静态URL

Ruby on rails 提交后Rails表单路由到静态URL,ruby-on-rails,forms,Ruby On Rails,Forms,我有一个基本的rails表单,可以从数据库中搜索参数。我想跟踪每次有人进行搜索(即提交此表单)。我的控制器有两个动作(一个表单所在的索引和一个包含所有搜索内容的创建)。目前,提交表单时,不会更改URL。URL保留模型的名称。我如何更改路由中的URL,以便允许分析查看此页面的访问次数 resources :prices, only: [:index, :create] 谢谢考虑在新操作中显示您的表单,以便在发布时更新URL resources :prices, only: [:index,

我有一个基本的rails表单,可以从数据库中搜索参数。我想跟踪每次有人进行搜索(即提交此表单)。我的控制器有两个动作(一个表单所在的索引和一个包含所有搜索内容的创建)。目前,提交表单时,不会更改URL。URL保留模型的名称。我如何更改路由中的URL,以便允许分析查看此页面的访问次数

  resources :prices, only: [:index, :create]

谢谢

考虑在新操作中显示您的表单,以便在发布时更新URL

resources :prices, only: [:index, :new, :create]

def index 
  redirect_to new_price_path
end

def new 
  @price = Price.new
  render "form"
end

def create
  # your search results
end
类似的东西可以让你使用标准的REST动词,但仍然可以实现你想要的


我想问一下,在你做出改变之前,你有没有测试过,即使URL没有改变,Analytics也不会在表单提交中发现事件?实时分析视图通常可以显示这一点。

如果您在此处编写您期望的url,该怎么办?www.whater.com/prices到www.whater.com/searchresults您能告诉我
搜索结果的情况吗?它是www.whater.com/?name=test&from=US或www.whater.com/search?name=test&from=US。我想要它干净-www.whater.com/searchresults-我不想要那里的帖子信息。分析是指谷歌分析还是其他什么?你可以使用谷歌标签来获取事件(如提交),但它确实有限(例如,谷歌会将其算作目标转换),而且设置起来很复杂。URL似乎是一种更简单的方式。是的,我想它不会给你一个干净的请求计数。我建议的代码更改在这种情况下有意义吗?