Orchardcms 从Orchard中的主题页面渲染模块视图?
我在Orchard中创建了一个主题,在主页上我想从一个模块中呈现一个视图 要渲染的视图由两个模块确定。一个“默认”模块和另一个模块,如果在Orchard中启用了默认模块,则会覆盖默认模块的路由。因此,我最好是在我的主题的主页中指定路由/url,并根据启用的模块呈现返回的视图。在果园里可以这样做吗 我可以使用AJAX在加载时动态呈现视图,或者使用Orchardcms 从Orchard中的主题页面渲染模块视图?,orchardcms,Orchardcms,我在Orchard中创建了一个主题,在主页上我想从一个模块中呈现一个视图 要渲染的视图由两个模块确定。一个“默认”模块和另一个模块,如果在Orchard中启用了默认模块,则会覆盖默认模块的路由。因此,我最好是在我的主题的主页中指定路由/url,并根据启用的模块呈现返回的视图。在果园里可以这样做吗 我可以使用AJAX在加载时动态呈现视图,或者使用和特定的url,但我更愿意使用“纯”Orchard解决方案 有什么建议吗?好的,多亏了伯特兰的评论,我想出了以下解决方案 @{ try {
和特定的url,但我更愿意使用“纯”Orchard解决方案
有什么建议吗?好的,多亏了伯特兰的评论,我想出了以下解决方案
@{
try
{
Html.RenderAction("Register", new { controller = "Home", area = "Invites" });
}
catch (InvalidOperationException inviteException)
{
try
{
Html.RenderAction("Register", new { controller = "Home", area = "Users" });
}
catch (InvalidOperationException userException)
{
@Display(New.DownloadLink());
}
}
}
因此,首先我尝试从
邀请
呈现注册表,如果该模块被禁用,我尝试呈现注册表表单用户
。如果两个模块都被禁用,将显示一个简单的下载链接。RenderAction@BertrandLeRoy这样做很有效,但是我不需要指定控制器
和区域
吗?比如{Html.RenderAction(“Register”,new{controller=“Home”,area=“Users”}}
或者{Html.RenderAction(“Register”,new{controller=“Home”,area=“invests”}}}
取决于我想使用的注册表单?我想要的是从主页获取/推送一份登记表。如果启用了该模块,则应使用来自邀请
的表单,否则应使用来自用户
的表单。是这样吗?有些代码,有些地方需要知道你想要什么。它无法神奇地读出你的想法。迟早,你必须明确你想要渲染什么。