我对以下关于批量分配的警告感到非常困惑:
WARNING: Can't mass-assign protected attributes: upload_id
这是我的上传模型:
class Upload < ActiveRecord::Base
belongs_to :uploadable, :polymorphic => true
attr_accessor :crop_x, :crop_y, :crop_w, :crop_h
has_attached_file :photo, :styles => { :thumb => '40x40#', :medium => '150x150>', :large => '300x300>'}
这是我的用户模型
class User < ActiveRecord::Base
has_one :upload, :as => :uploadable
attr_accessible :name, :email, :password, :password_confirmation, :birthdate, :emails, :icon_id
模型中没有 :upload_id 。
在控制器更新操作中:
def update
@user.upload = Upload.find_by_id(params[:user][:upload_id])
respond_to do |format|
if @user.update_attributes(:user)
format.js
end
end
end
谁能告诉我为什么会收到此错误。该应用程序有效,但我想解决这个问题。