新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文小编为大家详细介绍“gem的原理和作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“gem的原理和作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
目前创新互联建站已为近千家的企业提供了网站建设、域名、网页空间、网站托管维护、企业网站设计、类乌齐网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
这个gem主要是用来实现类似twitter那种关注,新浪那种收听的功能 主要是两个model的关联,例如一个用户订阅了一本书,我们可以这样实现User.first.follow(Book.first)
它在实现是就是利用两个多态,一个叫followable(被follow者), 一个叫followable(跟随者),把每个对象的类名字符串和id存进数据库实现关联,其他代码就实现了关于两者的查询代码, 下面是两者的关系
1 2 | has_many :followings, :as => :followable, :dependent => :destroy, :class_name => 'Follow' has_many :follows, :as => :follower, :dependent => :destroy |
1 2 | belongs_to :followable, :polymorphic => true belongs_to :follower, :polymorphic => true |
读到这里,这篇“gem的原理和作用是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注创新互联行业资讯频道。