私の Web アプリケーションには、複数のタイプのユーザーがいます。たとえば、テーブルCustomer (id, name, password, ...)
とAdmin (id, name, password, ...)
. これらは両方とも認証する必要があります。どの方法が最も賢明なのだろうか:
2 つのテーブルを使用して、2 種類の認証 Cookie、場合によっては
login
,logout
,isAuthenticated
メソッドの 2 つのセットを持ちます。これをやりたいのですが、Web フレームワークではこれが簡単にできないと感じています。2 つのテーブルを に詰め込み
User (id, name, password, role, columns_for_customer, columns_for_admin)
ます。これはおそらく最も単純で効率的なオプションです。テーブルの半分が未使用のままになるので、私はそれが醜いと思いますが。非常に少数のアクションを共有すると仮定Customer
します。Admin
新しいテーブルを追加します
User (id, name, password, customer_id, admin_id)
。中間地点。andテーブルから移動name
する(またはそこに複製する)ことに特に不安を感じます。Customer
Admin
ベスト プラクティスに関する回答を探しています。