【发布时间】:2018-06-16 09:25:01
【问题描述】:
我有 3 个模型:Post、Comment, 和 Image
(顺便说一句,我正在使用回形针宝石)
我想要实现的是用户可以对帖子发表评论。 此外,如果他们选择在帖子中评论图片,他们也可以这样做。关系如下所示:
发帖
class Post < ApplicationRecord
belongs_to :user
has_many :comments, :dependent => :destroy
end
评论
class Comment < ApplicationRecord
belongs_to :user
belongs_to :post
has_many :images, :dependent => :destroy
end
对于图片
class Image < ApplicationRecord
belongs_to :user
belongs_to :comment
end
流程是,例如,他们想对帖子发表评论,并想附加图片,他们可以通过在评论中附加图片来实现。他们还可以在一条评论中附加多张图片。
但是,我似乎不知道该怎么做。经过研究,我偶然发现了这个post,它在图库中上传了多张图片。
但是,它只有两层模型(Gallery 和 Picture)。他在他的视图和控制器中使用了这段代码:
查看
<%= file_field_tag "images[]", type: :file, multiple: true %>
控制器
if params[:images]
params[:images].each { |image|
@market.pictures.create(image: image)
}
end
我知道如何做到这一点。但这与我想要实现的目标不同。如果你能帮助我,那就太好了!提前致谢!
【问题讨论】:
-
accepts_nested_attribues_for是您正在寻找的。 stackoverflow.com/questions/18535748/… -
你的控制器是什么样的?目前是否与您引用的示例相同?如果您可以让它与一张图片一起使用,您可能只需要进行一些小改动即可支持多张图片。
标签: ruby-on-rails ruby ruby-on-rails-4 ruby-on-rails-5 paperclip