Ruby on rails 回形针赢了';t在Rails应用程序中保存图像
我正在尝试使用Rails应用程序向用户添加化身,但在创建用户时,它不会保存我的图像或更新数据库列 这就是模型的外观:Ruby on rails 回形针赢了';t在Rails应用程序中保存图像,ruby-on-rails,ruby,paperclip,Ruby On Rails,Ruby,Paperclip,我正在尝试使用Rails应用程序向用户添加化身,但在创建用户时,它不会保存我的图像或更新数据库列 这就是模型的外观: class User < ActiveRecord::Base has_attached_file :avatar 当我查看日志时,这就是传递给“注册”操作的内容: 参数:{“提交”=>“保存”、“操作”=>“注册”、“控制器”=>“用户/注册”、“用户”=>{“姓名”=>“米克·李辛格”、“生日”=>“07”、“密码确认”=>“[过滤]”、“昵称”=>“李辛格”、“
class User < ActiveRecord::Base
has_attached_file :avatar
当我查看日志时,这就是传递给“注册”操作的内容:
参数:{“提交”=>“保存”、“操作”=>“注册”、“控制器”=>“用户/注册”、“用户”=>{“姓名”=>“米克·李辛格”、“生日”=>“07”、“密码确认”=>“[过滤]”、“昵称”=>“李辛格”、“阿凡达”=>、“gen”=>“m”、“生日”=>“23”、“密码”=>“[过滤]、“生日”=>“1992”、“电子邮件”=>”lisinge@gmail.coma"}}
[回形针]保存附件。
曲别针说它正在保存模板,但当我在我的应用程序中查看public
文件夹时,它创建了一个system
,但system
文件夹是空的
因此,它似乎没有将图片保存到文件夹中
它由表单处理并保存在我的/tmp
文件夹中
也许你们有什么建议或者知道这个问题可能是什么吗?首先检查
路径对于所创建的附件是否正确。您可以使用avatar.path
来确定。如果它没有返回正确的路径,可能是有人正在覆盖默认的回形针
路径
同时检查运行应用程序服务器的用户是否可以写入public/system。尝试设置:path选项
has_attached_file :avatar,
:path => ':rails_root/public/system/:id.:extension'
我让它工作了
我不得不在我的用户模型中添加:头像到attr\u accessible
将此贴在此处,希望有机会对某人有所帮助:)
感谢大家的帮助不要忘记在表单声明中设置:multipart=>true。这咬了我一两次
has_attached_file :asset, :url => "/assets/:id/:style/:basename.:extension",
:path => ":rails_root/public/assets/:id/:style/:basename.:extension"
仅供参考,此代码实际上将我的文件保存在我的计算机“/”的根目录中,因为:rails_root参数失败。这是在Rails 3.0.0上的。rc以root用户身份运行,因此它应该能够编写get当使用@user.avatar.path
时,不能将nil转换为字符串。发布完整的回溯几乎总是很有用的。但它甚至不能保存到数据库我也有同样的问题,我尝试添加可访问属性,但它仍然无法正确保存,并且在尝试加载图片时显示丢失的消息。这是非常令人沮丧的尝试设置:path选项。也许会有帮助
has_attached_file :avatar,
:path => ':rails_root/public/system/:id.:extension'
has_attached_file :asset, :url => "/assets/:id/:style/:basename.:extension",
:path => ":rails_root/public/assets/:id/:style/:basename.:extension"