1
在我的應用中User
可以Post
在他的時間軸和Tag
其他用戶在他的帖子(如facebook)。在我的模型中,我必須知道誰在哪個帖子和誰做了標籤(總是帖子的所有者)被標記。我在這裏發現了與hashtags模型類似的東西,但是我無法得到與此相關的預期結果。有很多關於在帖子中標記用戶的關聯
我的第一個問題是:下面的方法是正確的?如果是這樣,我怎麼才能在創建關聯之前驗證用戶的存在?
class User < ActiveRecord::Base
has_many :posts
has_many :tagger_users, class_name: "Tag", foreign_key: "tagger_id"
has_many :tagged_users, class_name: "Tag", foreign_key: "tagged_id"
class Post < ActiveRecord::Base
has_many :tags
class Tag < ActiveRecord::Base
belongs_to :tagger_user
belongs_to :tagged_user
belongs_to :post
validates_presence_of :tagger_user, :tagged_user # This always return ["Tagger post can't be blank", "Tagged post can't be blank"] even when the users are correctly set
謝謝@dgarcia它工作完美! – 2015-02-25 16:51:12