各位,我在使用 Rails 实现相册功能时碰到一个让我比较纠结的问题,因为我学习 Rails 的时间不长,问题比较浅显,还请见谅;
我要实现两个简单的需求:
我实现的具体的代码
class Album < ActiveRecord::Base
attr_accessible :name, :description,:type
has_many :photos
belongs_to :cover, :class_name => 'Photo'
belongs_to :author, :class_name => 'Person'
end
class Photo < ActiveRecord::Base
belongs_to :album, :counter_cache => true
has_one :album,:foreign_key => "cover_id"
belongs_to :author, :class_name => 'Person'
end
功能 1:上述代码的描述可以实现,但是我感觉这个关系让我处理得非常别扭;rails 应该不是这样玩的;
功能 2:我的想法是给 album 加一个 type,由 type 来决定 album 是属于个人的还是其他某个组织,但是我总觉得操作起来有些繁琐;
希望大家能帮我解惑,谢谢!