【发布时间】:2015-08-26 21:53:56
【问题描述】:
我正在尝试通过carrierwave将图像上传添加到表单中,并通过图像标签显示图片。
因此我生成了一个图片上传器和一个迁移
$ rails generate uploader Picture
$ rails generate migration add_picture_to_cpostings picture:string
并迁移。
我也加了
mount_uploader :picture, PictureUploader
到 cpostings 模型。
在控制器中我允许了图片属性
def cposting_params
params.require(:cposting).permit(:content, :spots, :class_date, :class_time, :title, :picture)
end
用
上传 <%= f.file_field :picture, accept: 'image/jpeg,image/gif,image/png' %>
在表单中有效,但是当我尝试在帖子中显示图片时
<%= image_tag cposting.picture.url if cposting.picture? %>
我收到以下错误:
# 的未定义局部变量或方法 `cposting'
根据 railstutorial.org,该方法应由carrierwave 自动创建。你知道为什么它在这里不起作用吗?
【问题讨论】: