Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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,构建一个简单的论坛应用程序。” “我很满意我到目前为止所取得的成绩,但是 写着“…还在想办法。” “已经两天尝试了各种各样的事情” “这就是我现在所处的位置,有些东西没有按预期工作。” 放入“如有任何帮助/建议,将不胜感激!” #问题 将“我希望论坛的创建路径为'/helpcenter'而不是'/helpcenter/cat' 将“当我访问表单创建新论坛并点击提交时,” 正确地将“表单张贴到“/helpcenter”(FireBugged) 放置“但我得到的是索引,而不是创建!” 放置“我甚至在我的创建操作中放置了调试器,但它没有被调用。” #config/routes.rb scope”/helpcenter 资源:cat,:controller=>forums,:as=>:forums do 资源:topics,:controller=>“论坛主题”,:as=>:topics 资源:posts,:controller=>forum\u posts,:as=>:posts 结束 结束 匹配“/帮助中心”=>“论坛#索引”,:as=>:论坛 匹配“/helpcenter”=>“论坛#创建”,:via=>:post,:as=>:创建论坛_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 创建操作的自定义发布路由未启动 #解释上下文 将“我正在学习Rails,构建一个简单的论坛应用程序。” “我很满意我到目前为止所取得的成绩,但是 写着“…还在想办法。” “已经两天尝试了各种各样的事情” “这就是我现在所处的位置,有些东西没有按预期工作。” 放入“如有任何帮助/建议,将不胜感激!” #问题 将“我希望论坛的创建路径为'/helpcenter'而不是'/helpcenter/cat' 将“当我访问表单创建新论坛并点击提交时,” 正确地将“表单张贴到“/helpcenter”(FireBugged) 放置“但我得到的是索引,而不是创建!” 放置“我甚至在我的创建操作中放置了调试器,但它没有被调用。” #config/routes.rb scope”/helpcenter 资源:cat,:controller=>forums,:as=>:forums do 资源:topics,:controller=>“论坛主题”,:as=>:topics 资源:posts,:controller=>forum\u posts,:as=>:posts 结束 结束 匹配“/帮助中心”=>“论坛#索引”,:as=>:论坛 匹配“/helpcenter”=>“论坛#创建”,:via=>:post,:as=>:创建论坛

Ruby on rails 创建操作的自定义发布路由未启动 #解释上下文 将“我正在学习Rails,构建一个简单的论坛应用程序。” “我很满意我到目前为止所取得的成绩,但是 写着“…还在想办法。” “已经两天尝试了各种各样的事情” “这就是我现在所处的位置,有些东西没有按预期工作。” 放入“如有任何帮助/建议,将不胜感激!” #问题 将“我希望论坛的创建路径为'/helpcenter'而不是'/helpcenter/cat' 将“当我访问表单创建新论坛并点击提交时,” 正确地将“表单张贴到“/helpcenter”(FireBugged) 放置“但我得到的是索引,而不是创建!” 放置“我甚至在我的创建操作中放置了调试器,但它没有被调用。” #config/routes.rb scope”/helpcenter 资源:cat,:controller=>forums,:as=>:forums do 资源:topics,:controller=>“论坛主题”,:as=>:topics 资源:posts,:controller=>forum\u posts,:as=>:posts 结束 结束 匹配“/帮助中心”=>“论坛#索引”,:as=>:论坛 匹配“/helpcenter”=>“论坛#创建”,:via=>:post,:as=>:创建论坛,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我希望这个问题与我创建路线的方式有关。我尝试了很多不同的东西 #_form.html.erb .... 我使用标准表格作为助手 #搜索论坛的路径 我们清楚地看到了POST/helpcenter的路由,它绑定到论坛控制器的创建操作 #日志 日志清楚地显示我正在/helpcenter上发布帖子,但是它触发了index操作而不是create操作 #我做错了什么? 放上“谢谢!” 我认为请求与您的第一个论坛路由匹配,因为您没有指定HTTP方法。这应该起作用: match "/helpcenter"

我希望这个问题与我创建路线的方式有关。我尝试了很多不同的东西

#_form.html.erb

....
我使用标准表格作为助手

#搜索论坛的路径 我们清楚地看到了POST/helpcenter的路由,它绑定到论坛控制器的创建操作

#日志 日志清楚地显示我正在/helpcenter上发布帖子,但是它触发了index操作而不是create操作

#我做错了什么?
放上“谢谢!”

我认为请求与您的第一个
论坛
路由匹配,因为您没有指定HTTP方法。这应该起作用:

match "/helpcenter" => "forums#index", :via => :get, :as => :forums
match "/helpcenter" => "forums#create", :via => :post, :as => :create_forum
match "/helpcenter" => "forums#index", :via => :get, :as => :forums
match "/helpcenter" => "forums#create", :via => :post, :as => :create_forum
或速记版本:

get "/helpcenter" => "forums#index", :as => :forums
post "/helpcenter" => "forums#create", :as => :create_forum

乍一看,针对/helpcenter的帖子传递了论坛#索引匹配的规则,这是首先遇到的,所以这就是你得到的

match "/helpcenter" => "forums#index", :as => :forums
match "/helpcenter" => "forums#create", :via => :post, :as => :create_forum
那么:

match "/helpcenter" => "forums#index", :as => :forums
match "/helpcenter" => "forums#create", :via => :post, :as => :create_forum
match "/helpcenter" => "forums#index", :via => :get, :as => :forums
match "/helpcenter" => "forums#create", :via => :post, :as => :create_forum