2016-07-07 41 views
0

我即將開始一個Laravel項目,並對我應該如何去做這件事感到懷疑。首先,我將有兩種類型的用戶,即普通用戶和管理員。我查了一下,發現有兩張桌子是我的最佳解決方案。因爲普通用戶將擁有管理員擁有的所有列以及更多。Laravel 5.2的組成?可能?推薦的?

我會創建一個users_table和一個common_users_table。管理員將在users_table上獲得他們的數據,普通用戶的數據將分佈在兩個表中,common_users_table上的外鍵引用users_table。這樣沒有列將不會被使用。

我的問題是,我不知道如何在Laravel完成。我應該只創建1個模型嗎?也許2個模型與hasOne和belongsTo的關係?但是,當我製作註冊表時,我將如何一次註冊2個模型?怎麼認證?有很多事情,我根本沒有Laravel的經驗來確定長遠來看哪些更好。

因此,如果您在Laravel更有經驗和/或遇到過這樣的問題,解決此問題的最佳方法是什麼?

在此先感謝。

+1

也有助於有兩個表是_not_最好的解決方案。如果您需要添加管理員,會發生什麼情況?你打算創建一個_third_表嗎?只需要一個'user'表,其中包含'user_type'列。然後將中間件應用於路由/控制器以限制對特定用戶類型的訪問。 –

+0

與@MartinBean達成一致,使用一個表,並使任何兩種用戶類型都不能使用的列 – Birdman

回答

0

看弄成laravel的ACL和逆天,因爲這將是做了一件好事:ACL in Laravel,所以這會給你的用戶和權限,

也有,你可以利用一些漂亮的小包裝。

對不起,你上面的鏈接可能需要訂閱觀看,但條件可能是一個很好的入門以及在網站上的ACL東西