2010-11-23 16 views
0

Meine Ansicht:Ruby on Rails: nur bekommen, setzen und löschen erlaubt

<h1>New Address</h1> 

<% form_for @address, :url => new_address_path do |f| %> 
    <%= f.error_messages %> 
    <%= render :partial => "form", :object => f %> 
    <%= f.submit "Add Address" %> 
<% end %> 

Partial ... nichts Besonderes

<%= form.label :number %><br /> 
<%= form.text_field :number %><br /> 
<br /> 
<%= form.label :street %><br /> 
<%= form.text_field :street %><br /> 
<br /> 
<%= form.label :city %><br /> 
<%= form.text_field :city %><br /> 
<br /> 
<%= form.label :state %><br /> 
<%= form.text_field :state %><br /> 
<br /> 
<%= form.label :zip_code %><br /> 
<%= form.text_field :zip_code %><br /> 
<br /> 
<br /> 

mein Fehler:

ActionController::MethodNotAllowed 

Only get, put, and delete requests are allowed. 
+0

Bitte posten Sie Ihre routes.rb und Controller, das Problem ist wahrscheinlich in einer von denen. – Gazler

Antwort

1

MethodNotAllowed scheint aus dem Ressourcen-basierten Routing kommen. Ressourcenbasiertes Routing erfordert eindeutige Methodennamen, um Aktionen abzugleichen. In Ihrem Fall sollten Sie liefern :method => :post in form_for, etwas in der Art:

<% form_for @address, new_address_path, :method => :post) do |f| -%>