弃权警告:...请使用form_for(@resource,:as =>:name)

时间:2011-07-15 15:07:39

标签: ruby-on-rails-3 forms

基于其他帖子和Goog搜索,我尝试了几种变体来消除弃用警告,但在每种情况下都会出现语法错误。

<%= form_for :user, @user, :url => update_reviewer_email_userhome_path do |f| %>

警告:

DEPRECATION WARNING: Using form_for(:name, @resource) is deprecated. Please use form_for(@resource, :as => :name) instead.

我不确定,但我想知道模型是否是用户,但是视图和更新操作是由用户家控制器生成的。

更新:

当我改为以下......

<%= form_for @user, :url => update_reviewer_email_userhome_path do |f| %>

我收到了这个错误......

No route matches "/userhome/19/update_reviewer_email"

直到我改变了从post到put的路线:

  resources :userhome, :except => [:show, :new, :edit, :update, :destroy]  do
    member do
      put :update_reviewer_email
    end
  end

谢谢!

1 个答案:

答案 0 :(得分:3)

你可以摆脱:user部分:

<%= form_for @user, :url => update_reviewer_email_userhome_path do |f| %>