3
多言語対応の「モジュール権限管理」システムをプログラミングしています。 複数のテーブルが1つのLaravelモデル
が許容できる(ベストプラクティス)はLaravelのすべての3つの関連テーブルを処理するために単一のモデルを使用することです
モジュール、modules_trans、modules_permissions
:私は3つの関連テーブルを使用していますか?次のように私が理解から多言語対応の「モジュール権限管理」システムをプログラミングしています。 複数のテーブルが1つのLaravelモデル
が許容できる(ベストプラクティス)はLaravelのすべての3つの関連テーブルを処理するために単一のモデルを使用することです
モジュール、modules_trans、modules_permissions
:私は3つの関連テーブルを使用していますか?次のように私が理解からは、あなたの関係があることができ
class Language
{
public function modules()
{
return $this->belongsToMany('App\Module');
}
}
class Permission
{
public function modules()
{
return $this->belongsToMany('App\Module');
}
}
class Module
{
public function languages()
{
return $this->belongsToMany('App\Language');
}
public function permissions()
{
return $this->belongsToMany('App\Permission');
}
}
できるだけ多くACID(wiki)に従うべきであるあなたのデータベース!だから.... いいえ!ものを混ぜてはいけません。あなたの関係が上記の通りであれば、少なくともatleast。
次のようにそのため、あなたのテーブルがなければなりません...
module
id | name | ....
language_module
id | language_id | module_id
module_permission
id | module_id | permission_id