我们有一个xpage应用程序,它要求用户登录(使用lotus、id和密码)。如果用户登录成功,它将将用户重定向到指定的页面(例如,home.xsp)。
一开始,应用程序很简单,一个用户在应用程序中只有一个角色。每个角色在程序中都有不同的功能和接口。(这也是与用户商定的)。请想象下表是关于用户和用户角色的。
Username | Role
Alan | admin
Ben | user
John | leader
Judy | developver
Sam | manager
Susan | senior
Tom | user
最近,我
我试图让那些没有角色低于给定用户的用户。
我的逻辑在撞到砖墙时是这样的:
SELECT u.id, MIN(ar.role_id) as min_role, u.name
FROM user u
LEFT JOIN assigned_role ar ON ar.user_id = u.id
HAVING
min_role >=
(
SELECT MIN(ar2.role_id)
FROM assigned_role ar2
WHERE ar2.user_id = 43
)
这个没什么回报。
用户投影中不需要MIN(ar.role_id) as min_role。我只需要它在过滤条款。
为
LoginController以前有这样的代码:
class LoginController extends Controller
{
public function showLoginForm(){
$roles = Role::all();
return view('auth.login', compact('roles'));
}
public function logout(Request $request){
我在oracle数据库中定义了一组DB角色。说
查看器-仅供选择
更新者-只选择和更新
编辑器-仅用于选择和删除
旁路-只选择和插入
我有一些用户已经被授予了所有角色,而有些用户没有.Either方式,所有的用户都将至少有一个上述角色授予他们。
我的目标是识别所有没有说、更新和绕过角色的用户。
select grantee from dba_role_privs
where granted_role not in ('UPDATER','BYPASSER')
上面的代码列出了DB中所有可用的用户,因为所有用户都至少有一个授予他们的角色。
我不知道之前有没有人回答过这个问题,但我不知道如何去寻找这类东西,所以我会在这里问一问。例如,如果我有一个名为User的实体,其外观如下所示:
class User
{
int id;
string name;
int roleId;
}
和一个叫做角色的实体
class Role
{
int id;
string name;
string[] permissions;
}
用户包含角色的id。如果我通过rest请求用户,用户是否应该返回角色的id,如下所示:
{
"id": 1,
我有一个Group,它与User有多到多的关系.而且每个用户都可以有多个角色,我用实现了这些角色。
我正试图将所有附属于具有特定角色的组的用户撤回,例如learner
到目前为止,这就是我所拥有的:
class Group extends Model
{
// other code
//
public function learners(){
return $this->users::whereHas('roles', function($q) {
$q->where('name',