Ruby on rails RubyonRails:处理未链接到模型的表单

Ruby on rails RubyonRails:处理未链接到模型的表单,ruby-on-rails,ruby-on-rails-3,forms,Ruby On Rails,Ruby On Rails 3,Forms,我在实现这一点上遇到了困难。此外,我在控制器的索引页上遇到了“错误数量的参数(1代表0)”错误 routes.rb resources :potentialcandidates, :only => [:index, :send, :process] get 'potentialcandidates/send' => 'potentialcandidates#send', :as => :send_potentialcandidate post 'potentialcandida

我在实现这一点上遇到了困难。此外,我在控制器的索引页上遇到了“错误数量的参数(1代表0)”错误

routes.rb

resources :potentialcandidates, :only => [:index, :send, :process]
get 'potentialcandidates/send' => 'potentialcandidates#send', :as => :send_potentialcandidate
post 'potentialcandidates/process' => 'potentialcandidates#process', :as => :process_potentialcandidate
  class PotentialcandidatesController < ApplicationController
   def index
    end

   def process
    @name = params[:name]
    @email = params[:email]
    # Add user to user model
    @user = User.create(email: @email, name: @name, status: "active")
   end
 end
    <%= form_tag process_potentialcandidate_path do %>
      <%= text_field_tag "name" %>
      <%= text_field_tag "email" %>
      <%= submit_tag %>
    <% end %>
潜在候选人\u controller.rb

resources :potentialcandidates, :only => [:index, :send, :process]
get 'potentialcandidates/send' => 'potentialcandidates#send', :as => :send_potentialcandidate
post 'potentialcandidates/process' => 'potentialcandidates#process', :as => :process_potentialcandidate
  class PotentialcandidatesController < ApplicationController
   def index
    end

   def process
    @name = params[:name]
    @email = params[:email]
    # Add user to user model
    @user = User.create(email: @email, name: @name, status: "active")
   end
 end
    <%= form_tag process_potentialcandidate_path do %>
      <%= text_field_tag "name" %>
      <%= text_field_tag "email" %>
      <%= submit_tag %>
    <% end %>
class PotentialcandidatesController
index.html.erb

send.html.erb

resources :potentialcandidates, :only => [:index, :send, :process]
get 'potentialcandidates/send' => 'potentialcandidates#send', :as => :send_potentialcandidate
post 'potentialcandidates/process' => 'potentialcandidates#process', :as => :process_potentialcandidate
  class PotentialcandidatesController < ApplicationController
   def index
    end

   def process
    @name = params[:name]
    @email = params[:email]
    # Add user to user model
    @user = User.create(email: @email, name: @name, status: "active")
   end
 end
    <%= form_tag process_potentialcandidate_path do %>
      <%= text_field_tag "name" %>
      <%= text_field_tag "email" %>
      <%= submit_tag %>
    <% end %>

过程
ActionController::Base
中的一种方法,您不希望在控制器中重写它


更改名称,更新路由和表单,并重新启动服务器;它应该可以正常工作。

索引页的其余部分是什么?您的错误来自向不接受任何参数的方法发送参数。这就是我的索引页上的全部内容,即表单的链接。您确定该错误来自索引吗?我在此处收到错误:。那不是索引页吗?啊,我现在明白了。不能将
进程
用作控制器方法。它在
ActionController::Base
中使用。我向控制器添加了一个空的send方法,但遇到了相同的错误。
send
也是
ActionController::Base
中的一个方法。请记住,您还需要对路由和视图进行必要的更改。谢谢它的工作!我还有第二个问题。。。我试图从一个表单中获取信息,并在名为User的模型中创建一个新记录。在调用User.create()之后,我是否必须执行任何操作?User.create将在数据库中创建一个条目。如果您想稍后使用该信息,则必须使用ActiveRecord将该条目提取出来。