在单个视图中创建表单以及显示数据
Posted
技术标签:
【中文标题】在单个视图中创建表单以及显示数据【英文标题】:inside single view create form as well as display data 【发布时间】:2021-12-24 14:16:59 【问题描述】:我正在创建一个需要显示数据的视图页面以及一个用于插入数据的表单。要插入数据,我有引导模式。如何绑定我的视图页面,以便我可以在页面中显示数据以及创建表单来插入数据。我的意思是如何将我的视图绑定到显示数据?
public ActionResult GetFirm()
return View(db.FirmModels.ToList());
我的浏览页面
@model models.FirmModel
// code for bootstrap modal
// code for data table
<table id="tblFirmData">
<thead>
<tr>
<th>Edit/Print</th>
<th style="visibility:hidden;">@html.DisplayNameFor(model => model.FirmId)</th>
<th>NAME</th>
<th>CONTACT</th>
</tr>
</thead>
<tbody>
@foreach(var item in models)
int status = item.FirmRegistrationStatus;
</tbody>
</table>
当我执行foreach(var item in models)
得到错误'models' is a namespace but is used like a variable
并且当我执行@foreach(var item in Model)
时,我得到错误foreach statement cannot operate on variables of type 'FirmModel' because 'FirmModel' does not contain a public instance definition for 'GetEnumerator'
。
如何解决这个问题,我需要修改我的GetFirm
返回方法还是需要在视图页面中更改?
【问题讨论】:
【参考方案1】:由于您将列表传递给视图,因此您将视图模型定义为:
@model IEnumerable<models.FirmModel>
IEnumerable
接口正在实现用于遍历集合的GetEnumerator()
方法。
或者:
@model IList<models.FirmModel>
IList
接口继承了IEnumerable
。
相应地:
@foreach(var item in Model)
....
【讨论】:
以上是关于在单个视图中创建表单以及显示数据的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 从视图中的表单填充数据库表并将其显示在同一视图中