Используйте RenderMvcController для фильтрации списка в Umbraco
Моя цель - создать список содержимого (определенного типа документа) . в этом списке у меня есть кнопка фильтра и два ddlist, динамически заполняемые дочерними данными. когда пользователь нажимает "фильтр", список должен обновляться выбранными значениями ddlist. Возможно ли использовать RenderMVCController для этого? Я не мог использовать surfaceController, потому что не могу получить доступ к действию Index перед рендерингом страницы. Можно ли использовать Ajax, когда пользователь отправляет форму вместо обновления всей страницы?
Посмотреть
using (Html.BeginUmbracoForm("FilterPage", "inTheFieldController", FormMethod.Post, htmlAttributes: new { @id = "PageInTheField" }))
{
//....
}
контроллер
public class inTheFieldController : RenderMvcController
{
private readonly UmbracoContext umbracoContext;
public inTheFieldController()
{
umbracoContext = UmbracoContext.Current;
}
// GET: inTheField
public ActionResult Index()//RenderModel model)
{
}
и я хочу иметь что-то вроде этого:
[HttpPost]
public ActionResult FilterPage(inTheFieldModel model)
{
return null
}
Но он никогда не доходил до этой точки, он запрашивает SurfaceController.
1 ответ
Да, если вы используете BeginUmbracoForm, он всегда ожидает SurfaceController. В идеале вы должны использовать SurfaceController для форм. Я не совсем понимаю, что вы пытаетесь сделать здесь, но вы можете использовать @Ajax.BeginForm и связать это с действием SurfaceController