溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

gem的原理和作用是什么

發(fā)布時間:2022-01-10 17:33:51 來源:億速云 閱讀:195 作者:iii 欄目:大數(shù)據(jù)

本文小編為大家詳細介紹“gem的原理和作用是什么”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當,希望這篇“gem的原理和作用是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

這個gem主要是用來實現(xiàn)類似twitter那種關(guān)注,新浪那種收聽的功能 主要是兩個model的關(guān)聯(lián),例如一個用戶訂閱了一本書,我們可以這樣實現(xiàn)User.first.follow(Book.first)

它在實現(xiàn)是就是利用兩個多態(tài),一個叫followable(被follow者), 一個叫followable(跟隨者),把每個對象的類名字符串和id存進數(shù)據(jù)庫實現(xiàn)關(guān)聯(lián),其他代碼就實現(xiàn)了關(guān)于兩者的查詢代碼, 下面是兩者的關(guān)系

1
2
has_many :followings, :as => :followable, :dependent => :destroy, :class_name => 'Follow'
has_many :follows, :as => :follower, :dependent => :destroy
follow.rb  
1
2
belongs_to :followable, :polymorphic => true
belongs_to :follower,   :polymorphic => true

讀到這里,這篇“gem的原理和作用是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

gem
AI