我的应用程序有以下型号:
Advertisment (has_many :images)
Image (belongs_to :advertisment)
Image Fields: advertisment_id, image_type, image_url
app 1中有两种图像类型:square和2. banner。
我希望能够为两个类型图像创建一个带有两个浏览按钮的嵌套表单,并创建一个包含两种类型图像的广告。
预期结果:
#<Advertisment id: 1, name: "Test", content: "Lorem ipsum", created_at: "2014-08-01 20:14:06", updated_at: "2014-08-01 20:14:06">
[#<Image id: 1, advertisment_id: 1, image_url: "/images/test1.png", image_type: "banner", created_at: "2014-08-01 20:14:09", updated_at: "2014-08-01 20:14:09">, <Image id: 2, advertisment_id: 1, image_url: "/images/test2.png", image_type: "square" ,created_at: "2014-08-01 20:14:26", updated_at: "2014-08-01 20:14:26">]
我尽快需要一些指导。在此先感谢!
答案 0 :(得分:0)
为什么不为每个图像创建2个字段,如
#<Image id: 1, advertisment_id: 1, banner_url: "/images/test1.png", square_url: "/images/test2.png", created_at: "2014-08-01 20:14:09", updated_at: "2014-08-01 20:14:09">
它可以让您更轻松地执行此操作,广告只有一个图片,可以同时访问banner
和square
。
另一个选项(如果横幅和正方形图像相同,只是尺寸不同)使用CarrierWave gem并执行类似
的操作class ImageUploader < CarrierWave::Uploader::Base
...
process :resize_to_fit => [700, 400] # for banner
version :square do
process resize_to_fill: [300, 300] # for square
end
end