0
我正在創建一個應用程序,其中每個用戶都可以通過某種方式創建自己的...「Universe」,其中包含對他們有意義的項目和名稱數量等。多用戶多環境
我從來沒有這樣做過,到目前爲止,我有典型的情況下,你有用戶和管理員,但他們都基本上看在同一件事情。這裏每個用戶都有獨立的環境。
顯然用戶不應該能夠看到別人的環境。
有人可以請我指出在這個問題上的正確方向?也許我可以用一些有用的寶石或資源開始?
歡迎任何建議!
我正在創建一個應用程序,其中每個用戶都可以通過某種方式創建自己的...「Universe」,其中包含對他們有意義的項目和名稱數量等。多用戶多環境
我從來沒有這樣做過,到目前爲止,我有典型的情況下,你有用戶和管理員,但他們都基本上看在同一件事情。這裏每個用戶都有獨立的環境。
顯然用戶不應該能夠看到別人的環境。
有人可以請我指出在這個問題上的正確方向?也許我可以用一些有用的寶石或資源開始?
歡迎任何建議!
我首先使用插件進行身份驗證,例如, AuthLogic或Devise是兩個流行的例子。
這兩個都可以讓你定義一個User
類。
然後,當你向用戶顯示他們的東西在自己的環境,你可以確保你只用has_many
和has_one
,並在軌道has_and_belongs_to_many
關係,告訴他們自己的東西。
例如如果它是Facebook的,你可能有這樣的事情
Class User < ActiveRecord::Base
has_many :news_items
has_many :friends
has_many :messages
end
在你的代碼,那麼你可以參考
@user.news_items
@user.friends
@user.messages
而且關係將確保你只顯示屬於該用戶的信息。 (注意:實際上關係會更復雜,你可能需要更復雜的邏輯,但這應該讓你開始)
非常感謝!然而,它有道理,它不會成爲一個代碼消費?我的意思是,如果假設我有一個用戶,我會使用模型消息。 @messages = Message.find(:all)現在,我需要去@messages = Message.where(:user => session [user_id])...?或者類似的東西? – Lievcin 2011-02-18 16:25:29