无法批量分配受保护的属性:图像

时间:2013-06-06 20:39:08

标签: ruby-on-rails activemodel

我是铁杆新手,似乎无法找到问题。我一直在Google上搜索一段时间并在这里搜索。我想我只是错过了一些非常简单的东西,我没有抓住它。

我收到的错误消息是。

“无法批量分配受保护的属性:图像”

根据'应用程序框架'的错误在第13行的照片控制器中。

8     @photo = Photo.new
9     @gallery = Gallery.find(params[:gallery_id])
10   end
11 
12   def create
13     @photo = Photo.new(params[:photo])
14 
15     if @photo.save
16       flash[:notice] = "photo uploaded."
17       redirect_to galleries_url
18     else

在我的photo.rb页面中,我有以下内容:

class Photo < ActiveRecord::Base

    attr_accessible :name, :photo

    has_many :photos
    validates_presence_of :title
    validates_uniqueness_of :title

    belongs_to :gallery

end

有人可以帮助我指出正确的方向吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

params[:photo]包含:image密钥。

Photo.new({ hash of things including an :image key })正在尝试在新:image上设置Photo属性。

假设该模型甚至有:image属性,您需要在模型上设置attr_accessible :image,以便Rails允许您在任何操作中设置:image传递一个属性哈希。

有关背景信息,请参阅Rails attribute security guide