所以С能否请您向我解释一下,正确的方法是否是为不同类型的用户提供不同的DBContext。
例如:我们有两种方法的ApicController:
[HttpGet, Route("admin"), Authorize(RoleType.Admin)]
public Task<...> Get(... adminRequest)
{
var query = mapper<AdminGetCommand>(adminRequest);
return mediatr.Send(query);
}
[HttpGet, Route(""), Authorize(RoleType.User)]
public Task<...> Get(... userRequest)
{
var query = mapper<UserGetCommand>(userRequest);
return mediatr.Send(query);
}
之后,每个命令都依赖于具有不同配置的不同服务/DbContext。例如:
//filter for users
...
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.ApplyGlobalFilters<IDeletedUtcDateTime>(e => !e.DeletedUtcDateTime.HasValue);
}
...
//filter for admin
...
protected override void OnModelCreating(ModelBuilder builder)
{
...
base.OnModelCreating(builder);
...
}
...
我觉得我错过了什么或者有更好的解决办法
首先,我的问题是“为什么你需要多种上下文,而一种上下文就足够了?“看来你是在没有必要的地方引入复杂性。
是否可以将具有不同用户角色的用户重定向到laravel 5.1中的不同页面? 我研究了Auth中间件和Auth控制器,但没有发现任何处理登录请求本身的东西。 我发现了一些关于登录重定向在这里Laravel重定向回到原来的目的地后登录,但我不知道在哪里把建议的代码片段。 有人能帮我吗
问题内容: 假设我是普通用户还是超级用户,我想显示不同的列。 覆盖在已经完全没有效果 并且定义条件类属性也不起作用(未定义)(根据上的错误)。在等效的中做同样的事情,仍然没有定义 仅供参考,可以是从前面提到的问题继承的任何类。 问题答案: 我通常定义视图类属性,例如属性。它允许你向其中添加一些动态逻辑: 使用这种方法的问题(以及为什么在函数中重新分配值不起作用)是许多视图属性在应用程序启动时被缓存
我在Grails应用程序中集成了Spring security核心插件。
在我的Spring Boot应用程序中,我有一个REST控制器,其方法如下: 只有具有权限\u UPDATE\u OWN\u COMMENT或权限\u UPDATE\u ANY\u COMMENT的用户才能使用此endpoint。 在这个方法中,我需要创建两个不同的流-一个用于具有的用户,另一个用于具有权限的用户。 所以我的问题是——为了在单个方法中实现这些不同的逻辑流,Spring Securi
5.3 不同的颜色 CGDB支持一些颜色,取决于您的终端支持多少种颜色。下表是一个CGDB所提供的颜色的表格。标题为NR-16的列表示终端至少支持16种颜色。标题为NR-8的列表示终端至少支持8种颜色。每种颜色对应的整数数值表示了被传入curse函数init_pair()的数值,该函数用来使curse创建一种新的颜色。 COLOR NAME NR-16 NR-8 NR-8 bold attribu
我正在努力让Spring Boot应用程序启动并运行安全功能。我很难让它运行,因为我还提出了其他问题。然而,这个问题有点在功能方面。我有多种角色,如管理员和客户,登录后我想把他们发送到各自的在线页面。我想出的一个办法是创建一个登录页,然后使用cookies重定向它们,尽管我不知道如何做到这一点。如果我的方法是正确的,或者Spring Boot提供了默认功能,请提供一些例子,请告诉我。 这是我的Se