我正在为 Orchard CMS 编写模块,只有在用户获得授权的情况下,我才需要显示我的内容类型的所有部分。我可以在我的模块 (.cshtml) 视图中执行此操作吗?
关于这个:
if(<statement_about_authorization>)
@T("part_1"): @Model.part_1<br />
else
@T("part_2"): @Model.part_2<br />
或者也许用javascript?
我正在为 Orchard CMS 编写模块,只有在用户获得授权的情况下,我才需要显示我的内容类型的所有部分。我可以在我的模块 (.cshtml) 视图中执行此操作吗?
关于这个:
if(<statement_about_authorization>)
@T("part_1"): @Model.part_1<br />
else
@T("part_2"): @Model.part_2<br />
或者也许用javascript?
普通的 User.Identity.IsAuthenticated 可以工作,但 Orchard 也有一种很好的方式来根据定义的权限授权您的用户......
@if(Authorizer.Authorize(Permissions.PermissionName){
}
您可以在此处阅读有关定义权限的更多信息:Orchard Permissions
以及博客模块中关于如何定义自己的权限的示例:博客权限示例
我从来没有弄乱过 Orchard,但是在带有 asp.net 表单身份验证的 MVC 中,它看起来像这样:
if(User.Identity.IsAuthenticated)
@T("part_1"): @Model.part_1<br />
else
@T("part_2"): @Model.part_2<br />
通过一些谷歌搜索,看起来这也适用于 Orchard。