自定义模型不在rails 3.2.2中工作

时间:2012-04-01 15:52:05

标签: ruby-on-rails-3

我是ROR的新手,所以请帮助我。 我从rails控制台创建了一个名为'Customer'的模型,在数据库中有一个名为'Customers'的表,它有列:id,name,address,gender,dob,credit_card,created_at和updated_at。因此,为了保存这些信息,我创建了一个视图,例如:

<%= 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>
   

这个视图将由'public'控制器调用,来自'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

但我在视图部分遇到问题,“#&lt;#:0x9f49814&gt;”的未定义方法`customers_path'在包含“form_for(@customer)”的行中 我做错了什么?我正在使用rails 3.2.2 在此先感谢:)

1 个答案:

答案 0 :(得分:0)

您没有客户控制器操作的路线。只需将此行添加到routes.rb文件

即可
resources :customers

这个将生成几个助手,其中一个将是customers_path。您可以通过命令

列出所有路径助手
rake routes