Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.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在提交表单时,始终向我显示错误:路由错误无路由匹配”;“布拉布拉布拉”;_Ruby On Rails_Forms_Routes - Fatal编程技术网

Ruby on rails Rails在提交表单时,始终向我显示错误:路由错误无路由匹配”;“布拉布拉布拉”;

Ruby on rails Rails在提交表单时,始终向我显示错误:路由错误无路由匹配”;“布拉布拉布拉”;,ruby-on-rails,forms,routes,Ruby On Rails,Forms,Routes,我的应用程序很简单: 控制器:“主” 有3个动作:“欢迎”、“表格接收者”和“结果” 和2个视图:“result.html.erb”和“welcome.html.erb” 我所要做的就是将“welcome.html.erb”中的表单发布到操作“form_receiver”,并在“result”操作中显示一些结果 但是在发布表单之后,我得到了一个错误:路由错误No route matches“/main/form\u receiver” ,通过,我确信我已将路径包括在routes中 下面是我的代码

我的应用程序很简单:

控制器:“主” 有3个动作:“欢迎”、“表格接收者”和“结果”

和2个视图:“result.html.erb”和“welcome.html.erb”

我所要做的就是将“welcome.html.erb”中的表单发布到操作“form_receiver”,并在“result”操作中显示一些结果

但是在发布表单之后,我得到了一个错误:路由错误No route matches“/main/form\u receiver” ,通过,我确信我已将路径包括在routes中

下面是我的代码

控制器/main\u controller.rb:

class MainController < ApplicationController
  def welcome
    #Nothing
  end

  def form_receiver
    @p = params[:customer]
    redirect_to :controller => "main",:action=>"result"
  end

  def result

  end
end
<h1>Main#welcome</h1>
<%= form_tag :controller => 'main',
             :action     => 'form_receiver'  do%>
<p>name : <%= text_field "customer","nick" %> </p>
<p>pwd : <%= password_field "customer","password" %></p>
<p><input type="Submit" value="sign up"/> </p>
<% end %>
<%=@p['cick']%>
<%=@p['password'] %>
TestForm::Application.routes.draw do
  get "main/welcome"

  get "main/result"

  get "main/form_receiver"
end

正如您所说,您正在
表单接收者
发布。但是您在routes.rb中编写了
get

所以你应该:

post "main/form_receiver"

谢谢,我刚刚开始学习rails,当我写它的时候,我对“get”的真正含义知之甚少,非常感谢。