0

メソッドcreate_school_headがあるAdminControllerという名前のコントローラーがあります。

class AdminsController < ApplicationController
  ...
  def create_school_head
    @user = User.new
  end
  ...
end

また、ビューcreate_school_headがあります:

<%= form_for @user, :html => {:class => "form-horizontal"} do |f| %>
    <fieldset>
      <div class="control-group">
        <%= f.label :user_login, "Login", :class => "control-label" %>

        <div class="controls">
          <%= f.text_field :user_login %>
        </div>
      </div>

      <div class="control-group">
        <%= f.label :password, "Password", :class => "control-label" %>

        <div class="controls">
          <%= f.text_field :password %>
        </div>
      </div>

    </fieldset>

    <%= f.submit "Create", :class => "btn btn-success" %>
<%  end %>

Routes.rb

ElSchool::Application.routes.draw do
  resources :users,    :only => [ :new, :create, :show ]
  resources :sessions, :only => [ :new, :create, :destroy ]

  get "sessions/new"

  match 'pages/wrong_page', :to => 'pages#wrong_page'
  match '/signin',          :to => 'sessions#new'
  match '/signout',         :to => 'sessions#destroy'

  match '/admins/backups', :controller => 'admins',
                           :action     => 'backups'

  match '/admins/users_of_system', :controller => 'admins',
                                   :action     => 'users_of_system'

  match '/admins/create_school_head', :controller => 'admins',
                                      :action => 'create_school_head'

  match '/admins/create_teacher', :controller => 'admins',
                                  :action => 'create_teacher'

  root :to => 'sessions#new'                                                  #Home
end

現在、データを渡してユーザーコントローラーのメソッドを作成しています。ボタンがAdminControllerの他のメソッド、たとえばメソッドprocess_school_headで送信された後、このフォームからデータを送信したいと思います。どうやってやるの?

4

1 に答える 1

1

form_for メソッドで :url オプションを使用できます。例えば。、

<%= form_for @user, :url => process_school_head_url, :html => {:class => "form-horizontal"} do |f| %>

これもルートに含める必要があります。

match '/admins/process_school_head' => 'admins#process_school_head', :as => :process_school_head

それが役に立てば幸い。

于 2012-03-09T17:46:08.417 に答える