我正在创建一个带图库的简单网站。我有一个照片模型,每张照片都有一个页面,上面有信息和图片。 我不确定如何从照片中创建一个画廊。
画廊模型has_many照片,照片模型has_and_belongs_to_many画廊。 我想在每个照片页面上添加一个gallery.title字段,所以我有一个每个图库的照片列表,然后在视图中显示它们。 这是一个制作画廊的好方法吗?
(我已经浏览了Github上一些图库应用程序的代码,但大多数已经过时了,对我的需求来说过于复杂。)
答案 0 :(得分:1)
你的has_and_belongs_to_many关联应该匹配,因此画廊和照片都应该使用该关联。我最近建立了一个类似的系统,虽然我围绕着专辑。我的模型如下所示:
class Album < ActiveRecord::Base
has_and_belongs_to_many :photographs
和
class Photograph < ActiveRecord::Base
has_and_belongs_to_many :albums
你们两人的联系表看起来像这样:
class AlbumPhotographJoinTable < ActiveRecord::Migration
def self.up
create_table :albums_photographs, :id => false do |t|
t.integer :album_id
t.integer :photograph_id
end
end
def self.down
drop_table :albums_photographs
end
end
希望对您的模型设置有所帮助。