微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 关系像Twitter的追随者/跟随在ActiveRecord

我试图在我的应用程序中表示用户间的关系,用户可以拥有许多关注者,并可以跟随其他用户.
我想要像user.followers()和user.followed_by()
可以请你详细告诉我如何用ActiveRecord来代表这个?

谢谢.

解决方法

你需要两个模型,一个人和一个追随者
rails generate model Person name:string
rails generate model Followings person_id:integer follower_id:integer blocked:boolean

和模型中的以下代码

class Person < ActiveRecord::Base
  has_many :followers,:class_name => 'Followings',:foreign_key => 'person_id'
  has_many :following,:foreign_key => 'follower_id' 
end

并在您撰写的“跟随”类中对应

class Followings < ActiveRecord::Base
  belongs_to :person
  belongs_to :follower,:class_name => 'Person'
end

你可以让你的名字更清楚(我特别不喜欢跟随名字),但这应该让你开始.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐