【问题标题】:Implementing multiple attachments in one post在一篇文章中实现多个附件
【发布时间】:2012-11-12 19:45:01
【问题描述】:

在 Rails 项目中处理多个附件的最佳方法是什么?

我有一个帖子。我想附加不同类型的内容(音频/文档/照片/视频)并显示它们。 我希望能够在不同的帖子中使用相同的附件。 我应该如何实现这个(例如,如果我使用 gem carrierwave)?

这行得通,但我想将每种内容分成不同的模型和表格(会有很多内容):

class Attachment < ActiveRecord::Base
  attr_accessible :post_id, :image, :remote_image_url, :document, :remote_document_url, :video, :remote_video_url
  belongs_to :post
  belongs_to :user

  mount_uploader :image, ImageUploader
  mount_uploader :document, DocumentUploader
  mount_uploader :video, VideoUploader
end

*已更新

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 carrierwave attachment


    【解决方案1】:

    您可以创建一个模型内容(以后可以将其关联到您喜欢的任何模型),然后使用嵌套的内容模型执行 has_many 以添加多个内容项。不要忘记将您的扩展程序和 MIME 类型列入白名单

    【讨论】:

    • 我如何正确地将内容分为视频、文档和音频?
    • 分开?在节目中?编辑?需要更多信息..您可以按文件类型设置条件。
    • 为什么需要不同的模型?如果你这样做,那么为每种类型的内容创建模型,加载内容有不同的加载按钮(如 tumblr),然后再次使用一对多 + 嵌套表单附加到帖子。您应该注意,数据库并不关心它是什么类型的内容,我会将所有内容(视频、音频、图像)保存在一个模型中,并且可能会根据 MIMEtype 设置一个内容类型,您可以随时再次使用它来设置用于显示的 CSS。
    • 谢谢!我想将模型分成几个模型,以方便浏览 AllVideos,例如并选择我想在我的帖子中使用哪些。
    猜你喜欢
    • 2015-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多