如何在Rails 3中使用没有模型的回形针上传图像?

时间:2013-11-06 06:43:41

标签: ruby-on-rails ruby ruby-on-rails-3.2 paperclip image-uploading

我想在没有模型的情况下在 Rails 3.2 中实施 Papereclip

我是RoR和Paperclip的新手。

我按照THIS教程使用了回形针。它运行成功。

但是在本教程中他们已经展示了模型的使用,我不想使用模型或者不想修改现有模型。

2 个答案:

答案 0 :(得分:3)

Rails是面向对象的。

# Article model
attr_accessible :image
# Paperclip attachment code and whatever rules and conditions you want.

image属性实际上是数据库中的一列,以及可从Article模型访问的属性。该image属性需要是一个字符串类型(varchar)来存储保存图像的url。

例如,如果您的文章具有图片属性,则在您的视图文件文章#显示中,您可以通过图片属性显示您的图片,其中图片属性为{{ 1}}。

如果你想在同一篇文章中有很多图像,那么你需要创建2个模型(文章和图像)并且有一个关联

<%= image_tag @article.image.url %>

通过此关联,您可以通过

获取并显示图像
 # Article model
 has_many :images
 accepts_nested_attributes_for :images

 # Image model
 attr_accessible :image_url
 belongs_to :article
 # paperclip attachments...

从技术上讲,您不需要将图像的URL存储在数据库中,您可以将其存储在变量中,但它只会在会话期间有效并且之后会消失。如果您想在以后查看图像,则需要将其存储在数据库中。

答案 1 :(得分:1)

如果不使用单独的模型,您可以查看Paperclip Docs。这里基本上做的是将图像存储为现有模型的属性。

关于根本不使用模型,您希望如何将图像对象与某些现有记录相关联?你的项目不需要吗?