0
我有一個表稱爲角色與5列(id,名稱,角色,created_At,update_at)。 我需要在數據庫中創建一個枚舉ADMINISTRATOR =>'Adinistrador',EMPLOYEE =>'Colaborador'。我需要訪問驗證,如果是管理員,我雖然是把這樣的查詢塗抹: table-> role(ADMINISTRATOR);Laravel 5.2枚舉與數據庫
是一種用數據庫做枚舉的方法嗎?
我有一個表稱爲角色與5列(id,名稱,角色,created_At,update_at)。 我需要在數據庫中創建一個枚舉ADMINISTRATOR =>'Adinistrador',EMPLOYEE =>'Colaborador'。我需要訪問驗證,如果是管理員,我雖然是把這樣的查詢塗抹: table-> role(ADMINISTRATOR);Laravel 5.2枚舉與數據庫
是一種用數據庫做枚舉的方法嗎?
在db表中使用枚舉有一個很大的缺點:如果你需要添加一個新值,你必須改變表。如果您的表格有很多行,則可能會非常耗時。我個人更喜歡使用tinyint字段作爲由兩個字段組成的表的外鍵:id,值的描述。
在表格將INT存儲的Mysql 柱role
值1,2,3,4, 表roles
將存儲在像的方式行:(1, ADMINISTRATOR), (2, User)
等。
Laravel
define('ADMINISTRATOR', 1);
define('User', 2);
table->role(ADMINISTRATOR); // search for ADMINISTRATOR
在這種情況下,結果是ID =>管理員描述=> 「Administrador」
?我如何調用方法來檢查是admin還是EMPLOYEE? –
@FabioSantos我已更新我的信息。 –
列角色存儲值和另一列**描述**存儲ADMINISTRATOR,EMPLOYEE,但我需要存儲portogueses描述 –