2010-05-12 72 views
3

我正在创建一个带有画廊的简单网站。我有一个照片模型,其中包含每张照片的信息和图像。 我不确定如何从照片创建一个画廊。在Rails中创建画廊

图库模型has_many照片,照片模型has_and_belongs_to_many画廊。 我想在每张照片页面上添加一个gallery.title字段,这样我就可以获得每个图库的照片列表,然后在视图中显示它们。 这是一个制作画廊的好方法吗?

(我已经通过在Github上一些画廊的应用程序的代码看,但大多数是过时的是我的需求太复杂了。)

回答

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 

希望有点帮助与您的模型设置。