bootstrap adminlte教程9:问答系统的ClubContents的用方法修改表中的一个字段的值,实现管理员完结
我一直在搜SQL的update方法在MVC5中怎么用哩,Edit非要所有字段的值写上,
后来终于知道,原来也可以只改某一个值 的。
1.在前台增加一个if管理员,增加ok的铵钮。
@if (Session["role"].ToString() == "Super")
{
<form action="/ClubContents/DelClub?Id=@item.Id" method="post" class="col-md-1 col-xs-3 text-left">
<input id="DelSubmit" class="btn btn-xs btn-warning" type="submit" value="Del">
</form>
<form action="/ClubContents/OkClub?Id=@item.Id" method="post">
<input id="DelSubmit1" class="btn btn-xs btn-info" type="submit" value="Ok">
</form>
}
上面的JS是一个确认和上篇的一样。要写在@session中
<script type="text/javascript">
window.onload = function () {
var bt = document.getElementById("DelSubmit1");
bt.onclick = function () {
confirm("确定完结吗?");
}
}
</script>
3.方法
// POST:确定完结问答,由管理员可以直接操作
[HttpPost]
//[ValidateAntiForgeryToken]
public ActionResult OkClub(string id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
//读出find
var OkClubToUpdate = db.ClubContents.Find(id);
OkClubToUpdate.ClubState = "1";
if (TryUpdateModel(OkClubToUpdate)) //TryUpdateModel是方法的重点他能看到属性的改变。上面我改变了为1.
{
db.SaveChanges();
return RedirectToAction("Index");
}
return RedirectToAction("Index");
}
成功。
浙公网安备 33010602011771号