【发布时间】:2018-12-08 21:14:01
【问题描述】:
我有一个关于如何用 eloquent 生成查询的问题,如果您能提供任何帮助,我将不胜感激。
我的数据库中有 4 个表: 1. 模块 2. 角色 3.module_rol(数据透视表) 4.地区
表格结构:
模块: id int 名称字符串 区域整数 活跃的布尔
角色 id int 名称字符串
module_rol rol_id 整数 module_id int
地区 id int 名称字符串
我需要从模块表中获取所有的值,例如有一些条件..
public function getUserModules($rol, $region)
{
// Return all modules to which that role is allowed to access and have that region defined
}
在等待一些帮助时,非常感谢您
编辑 1:
Schema::create('regions', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->timestamps();
});
Schema::create('modules', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->integer('region')->unsigned();
$table->boolean('active')->default(true);
$table->timestamps();
$table->foreign('region')
->references('id')->on('regions')
->onDelete('cascade');
});
Schema::create('roles', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->timestamps();
});
Schema::create('module_rol', function (Blueprint $table) {
$table->increments('id');
$table->integer('rol_id');
$table->integer('module_id');
$table->timestamps();
$table->foreign('rol_id')
->references('id')->on('roles')
->onDelete('cascade');
$table->foreign('module_id')
->references('id')->on('modules')
->onDelete('cascade');
});
【问题讨论】:
-
你能发布与模型的关系吗?
-
谢谢!..查看我的编辑