2012-04-01 7 views
0

私はRORの初心者ですので、これで手伝ってください。 railsコンソールから「Customer」というモデルを作成しました。データベースに「Customers」という名前のテーブルがあり、ID、名前、住所、性別、dob、credit_card、created_at、およびupdated_atという列があります。カスタムモデルがレールで動作しない3.2.2

<%= form_for(@customer) do |f| %> 
<div class="field"> 
<%= f.label :name %><br /> 
<%= f.text_field :name %> 
</div> 
<div class="field"> 
<%= f.label :dob %><br /> 
<%= f.date_select :dob %> 
</div> 
<div class="field"> 
<%= f.label :gender %><br /> 
<%= f.text_field :gender %> 
</div> 
<div class="field"> 
<%= f.label :address %><br /> 
<%= f.text_field :address %> 
</div> 
<div class="field"> 
<%= f.label :phone_number %><br /> 
<%= f.text_field :phone_number %> 
</div> 
<div class="field"> 
<%= f.label :credit_card %><br /> 
<%= f.text_field :credit_card %> 
</div> 
<div class="actions"> 
<%= f.submit 'Order', :action => :save_order %> 
</div> 

このビューは「国民のコントローラ、アクションから「check_out」によって呼び出されます アクションcheck_outのコードはのようになります:

だから、私のようなビューを作成し、これらの情報を保存します
def check_out 
    @customer = Customer.new 
end 

と行動のためのコード「save_orderは」次のようになります。

def save_order 
    @customer = Customer.new(params[:customer]) 
    if @customer.save 
     #somcode 
    end 
end 

しかし、私は、ビューの部分で問題を取得しています、「未定義"customer_path for#<#:0x9f49814>" "form_for(@ customer)"を含む行 私は間違って何をしていますか?私はレールを使用しています。3.2.2 ありがとうございます。

+0

http://stackoverflow.com/questions/8706774/undefined-method-with-path-while-using-rails-form-for私は、コントローラの顧客を持っていけない –

答えて

0

カスタマーコントローラのアクションのルートがありません。ただ、routes.rbファイル

resources :customers 

いくつかのヘルパーを生成します。この1に次の行を追加し、そのうちの一つは、customers_pathになります。あなたは、コマンドによって、すべてのパスヘルパーを一覧表示することができます

rake routes 
+0

'、私は新しい顧客を作るためにコントローラ' public 'を使うことを望んでいました。 –

+1

MVCパターンによれば、顧客を制御する方が良いです。車輪を再構築しないでください。 – megas

関連する問題