2010-08-01 22 views
0

不知道發生了什麼。我已經使用了以下代碼來嘗試編輯類別的名稱,但是我收到了上面的錯誤消息。我的表單代碼和提交編輯是: -ActionController :: MethodNotAllowed(只允許獲取和發佈請求。):

<% form_for :category, :url => categories_url(@category),:html => { :method => :put } do |f| -%> 
<p>Name: <br /><%= f.text_field :name, :size => 60 %></p> 
<%= submit_tag 'Save' %> or <%= link_to 'cancel', admin_categories_url%> 

非常直截了當的東西。我的控制器的代碼是: - DEF編輯 @Category = Category.find(PARAMS [:ID]) 端

#PUT /類別/ 1 #PUT /categories/1.xml DEF更新 @Category = Category.find(PARAMS [:編號]) @ category.update_attributes(PARAMS [:類])

respond_to do |wants| 
    wants.html { redirect_to admin_categories_url } 
    wants.xml { render :xml => @category.to_xm } 
end 

此代碼對其他事情的來龍去脈 - 如博客文章,所以我我不知道我在哪裏{「mg錯了。幫幫我??

回答

2

我想你想要:url => category_url(@category)(非複數)。

+0

謝謝,這樣的簡單的想法,它的工作!胡說! – mrbernz 2010-08-01 22:19:46

2

這往往是一個更清潔......讓路由系統找出如何最好地保存@category。

/app/controllers/admin_categories_controller.rb(在此猜到)

def new 
    @category = Category.new 
end 

/app/views/admin_categories/new.html.erb

<% form_for @category do |f| %> 
<p> 
<%= f.label :name%>: <%= f.text_field :name, :size=>60%> 
</p> 
<%= f.submit :save%> or <%= link_to 'cancel', admin_categories_url%> 
+0

謝謝,我也會試試這個。 – mrbernz 2010-08-01 22:20:02

相關問題