我開始討論Rails &有幾個高級問題,通常圍繞用戶,他們的卷以及如何構建或佈局新的Rails應用程序。我真的只是尋找不同的想法(或對我未嘗試過的未受過教育的猜測進行驗證)和他們的利弊&缺點。Rails:使用會話,Cookies或命名空間劃分用戶,管理員等
一個新的項目將有用戶,管理員和,讓我們給他們打電話,利益相關者。
這些顯然都是人,每個人都需要登錄,並且會有不同的「滾動」。我知道有很多方法可以解決這個問題,但我正在尋找「Rails」方式來儘可能多地利用所謂的「Convention Over Configuration」。
- 管理員擁有超能力,可以看到&去任何地方
- 利益相關者只能更改自己的網站的區域
- 用戶(也許有一個更好的名字,因爲所有角色在某種意義上, '用戶')只能查看由利益相關者創建的內容 ,並且 可以對其進行選擇性評論。
所以,如何處理好這個...
登錄:使用一個登錄表單,然後分配不同的卷?或發送用戶到一個登錄和管理員,到另一個等...?優點缺點?我想維護一個用戶類比分裂它們更容易......但安全性呢?
路線:
爲了避免嵌套路由(其中許多建議反對),我想利益相關者只看到自己的「賭注」。所以當他們登錄時,他們會立即看到他們的小區域。想知道如果不是/ stakeholder/stakeholder_id /賭注/新的,也許我可能只是/賭注/新的。這是如何處理的?在用戶?在會議中?曲奇餅?
那麼管理員呢?我見過這個卷的例子移動到它自己的「命名空間」(我認爲?)其中所有管理任務都預先添加/ admin/...這是常見的嗎?或者,還有更好的方法?
而且,最後,在更高的卷(
admin
或stakeholder
)想「共享」的視圖或控制器,或任何爲此事代碼,由一個較小的卷(user
)使用,會發生什麼?如果admin
擁有自己的控制器,則admin/
下的型號爲&,那麼使用/stake/new
還是我們還需要維護/admin/stake/new
?
對不起,我的困惑&詳細。任何幫助,或例子/文件,將不勝感激...
建議您在railscasts.com上搜索授權。一旦您查看了許多授權庫,就可以輕鬆解決一些基本問題。祝你好運。 – aceofspades 2010-12-10 20:58:17
我知道授權是自行開發的還是** authlogic **或** devise **等等......我*不知道的是它們如何與應用程序本身的結構相關聯。現在,我還沒有*使用*一個,但是,當我閱讀每個人的文檔時,這可能會變得很清楚?或者可能是所有人使用的「標準」總體方法(Rails的方式),我想這就是我所問的... – Meltemi 2010-12-10 21:08:22
與他們一起玩,就像全面的建議。一旦你做到了,它會變得更清晰。對於諸如利益相關者之類的東西,僅僅將查詢範圍限制在當前登錄的利益相關者中是很簡單的。即只需致電@ current_stakeholder.stakes.new等。 – Doon 2010-12-10 21:19:06