2016-01-23 48 views
0

創建一個練習模塊化應用程序,其中應用程序的所有功能基本上都包含在引擎中。將用戶路由到其他導軌引擎

我有一個問題,當涉及到添加另一個引擎。 是否有可能將設計登錄用戶路由到該功能的根目錄。

我的目標是從一個用戶登錄時,將具有特定角色的用戶作爲這個額外的引擎根目錄(設計用戶在覈心引擎中生成和配置,2個引擎位於空白的父應用程序中)。

我也有一個passthrough控制器,將用戶路由到特定的路徑。我想盡可能知道如何在控制器中定義另一個引擎根的路徑。我將如何將另一個引擎中的導航欄內的特定視圖路由到另一個引擎中的視圖。

也使用CanCan很容易讓用戶使用此引擎功能,而另一個用戶不會。用戶還將具有不同的導航可訪問性,這將在覈心應用程序佈局中處理。會不會有根用戶使用Rails引擎的問題,它會在覈心引擎中指定相同的應用程序佈局。

這可能看起來很混亂,但任何幫助都會令人驚歎。

+0

是你的引擎命名空間? – Elvn

+0

是它的名字與核心引擎@ValAsensio一起隔開 – Leafshinobi32

回答

1

,我能想到的是通過路線約束,所以基本上你將測試如果current_user你可以從request對象得到它相應的權限

## verify if the user/admin is connected 
return false unless request.cookie_jar[:auth_token] 
Admin.find_by_auth_token(request.cookie_jar.signed[:auth_token]) 

Rails的引擎的一種方法是迷你獨立應用程序,您可以通過共享的數據庫進行通信。因此,您可以使用主應用的用戶對象和安裝的引擎,您可以對其執行授權/權限測試。

+0

真棒答案謝謝,我認爲引擎具有共享數據庫可能會更好一點嗎? – Leafshinobi32