在视图上提交页面时,我需要在Controller中调用一个方法。 我不知道该怎么做。如果您可以提供一个关于如何调用Controller的小例子,那将是值得赞赏的。
答案 0 :(得分:1)
编辑:不确定您用于开发应用程序的框架,但这是使用ASP.NET MVC的示例。
听起来您想知道如何使用Controller中定义的Action方法来处理从View提交的表单的处理。此示例使用Razor视图引擎。在您的视图中,您可以使用BeginForm
辅助方法创建表单,如下所示:
@using (Html.BeginForm("Action", "Controller", FormMethod.Post)) {
@* form elements go here *@
}
字符串“操作”和“控制器”分别是操作方法和控制器的名称。
请注意,呈现的HTML在表单标记的action属性中包含 / controller / action 路由:
<form action="/Controller/Action" method="post">
</form>
另请注意,您不必使用帮助方法,只需使用上面的HTML创建自己的表单。
答案 1 :(得分:0)
例如 - Ruby on Rails:
假设您有桌子/模型'建筑'
您将拥有Building
模型(注意 - 单数)。
您将拥有BuildingsController
类(在定义该控制器的文件中)。
此控制器将具有多种方法(在许多其他用途中)可以作为表单中的操作调用,即视图是您的建筑视图。
rails中的表单代码是form_for :building
,它构建了相应的html表单标记,其中的操作将指向也使用模型信息的控制器方法。
提交表单时,它根据操作知道要转到哪个控制器方法。处理后,例如保存到数据库后,控制器还将负责确定要显示的视图(例如错误页面,建筑物页面列表等)
正如您在轨道中看到的那样,一旦您了解了这些惯例,建筑物,建筑物和建筑物的标准用法就非常方便。