ruby – 手动更新Carrierwave Uploader安装的属性

我无法在由carrierwave上传器安装的属性上使用model.update_attribute. SQL语句不接受该值并向占位符添加NULL.如果我从模型类中删除mount_uploader语句,它将正常工作.我正在从控制台进行故障排除,并试图在播种数据库时添加一些属性,这阻碍了我的努力.想法?

谢谢.

更新:
相关代码:

class Profile < ActiveRecord::Base
  belongs_to :user
  has_and_belongs_to_many :sports
  has_and_belongs_to_many :interests
  has_and_belongs_to_many :minors
  has_and_belongs_to_many :majors
  has_and_belongs_to_many :events
  has_and_belongs_to_many :groups
  attr_accessible :description,:username,:avatar,:bio,:first_name,:last_name,:major,:minor,:graduation_date,:living_situation,:phone,:major_ids,:minor_ids,:sport_ids
  mount_uploader :avatar,AvatarUploader
end

我只是试图从db种子文件重写:avatar字符串,并从rails控制台进行测试,如下所示:
Profile.first.update_attribute(:avatar,’foo’)

当我注释掉mount_uploader行时,两者都有效.

添加mount_uploader方法是否冻结字符串或使其不可变?

解决方法

我找到了解决方案.

我的问题是我无法改变我的seeds.rb文件中载入CarrierWave上传器的属性.

这有效:

user.profile.update_column(:avatar,'foobar/image.png')

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...