我正在为Orchard CMS编写模块,只有在用户获得授权的情况下,才需要显示我的内容类型的所有部分。我可以在我的模块(.cshtml)中查看吗?
关于此事:
if(<statement_about_authorization>)
@T("part_1"): @Model.part_1<br />
else
@T("part_2"): @Model.part_2<br />
或者也许使用javascript?
答案 0 :(得分:9)
正常的User.Identity.IsAuthenticated可以使用,但Orchard也有一种基于定义的权限授权用户的好方法......
@if(Authorizer.Authorize(Permissions.PermissionName){
}
您可以在此处详细了解如何定义权限:Orchard Permissions
博客模块中有关如何定义自己的权限的示例:Blog Permissions Example
答案 1 :(得分:3)
我从未和Orchard搞混,但在使用asp.net表单身份验证的MVC中,它看起来像这样:
if(User.Identity.IsAuthenticated)
@T("part_1"): @Model.part_1<br />
else
@T("part_2"): @Model.part_2<br />
通过一些谷歌搜索,看起来这也适用于Orchard。