【发布时间】:2017-10-09 12:23:33
【问题描述】:
我基本上有一个联系表格,我需要将其发布到我的 Umbraco 后端。前端看起来像这样:
using (Html.BeginUmbracoForm("HandleFormSubmit", "ContactForm", FormMethod.Post)) {
<form>
<input name="Name" type="text" />
<button type="submit">Send</button>
</form>
}
然后我在/Controllers/ContactFormController.cs 中有一个表面控制器,看起来像:
public class ContactFormController : SurfaceController {
// GET: ContactForm
public ActionResult Index() {
return PartialView("ContactForm", new ContactForm());
}
[HttpPost]
public ActionResult HandleFormSubmit(ContactForm model) {
return RedirectToCurrentUmbracoPage();
}
}
我正在尝试使用HandleFormSubmit POST 方法。 GET 方法有效(断点证明了这一点)。无论我做什么,我都无法让它达到这种方法。我看了很多指南,所有的指南似乎都和这个完全一样。
POST数据如下:
url: /contact-us/
data: name="Test"
Content-Type: multipart/form-data
我在这里做错了什么?使用 Umbraco 7.6.6
【问题讨论】:
-
帖子的网址应该类似于
/umbraco/sufrace/ContactForm/HandleFormSubmit。你有/contact-us/的自定义路由吗? -
@DZL 我的 RouteConfig.cs 没有被修改过。这是 Umbraco,所以 Umbraco 会帮我处理。
-
是的,但是你需要发帖到
/umbraco/sufrace/ContactForm/HandleFormSubmit而不是/contact-us/ -
@DZL 如何告诉 Html.BeginUmbracoForm?
-
在浏览器中查看源码会产生什么?
标签: umbraco umbraco7 surface-controller