我试图最终理解模型-视图-控制器模式。显然,所有业务逻辑最好放在模型中以避免“又胖又笨又丑的控制器”。但是同时接触多个模型的方法呢?
假设结帐会影响订单模型、产品、用户、交付、折扣。如果我们决定将业务逻辑放在模型中,结帐方法将存储在哪里以及使用相关模型的正确方法是什么?将他们的对象作为参数传递?
还是应该将与许多模型相关的功能移到一个单独的类中?如果是这样,在不违反 MVC 原则的情况下,我应该将它放在应用程序结构中的什么位置?
帮助我理解。
我试图最终理解模型-视图-控制器模式。显然,所有业务逻辑最好放在模型中以避免“又胖又笨又丑的控制器”。但是同时接触多个模型的方法呢?
假设结帐会影响订单模型、产品、用户、交付、折扣。如果我们决定将业务逻辑放在模型中,结帐方法将存储在哪里以及使用相关模型的正确方法是什么?将他们的对象作为参数传递?
还是应该将与许多模型相关的功能移到一个单独的类中?如果是这样,在不违反 MVC 原则的情况下,我应该将它放在应用程序结构中的什么位置?
帮助我理解。
我是php,mysql的新手。这个问题很有趣。所需的 MVC 架构?也许是这样一个问题,因为我仍然不明白它的用途,以及何时何地使用它。
为什么要使用它?如果你可以直接调用 Catatlog.php 页面,并且已经在 id 下显示了一些目录,像这样: $id = $_GET['id']; 例如,我们从数据库中调用 id 下的表单。
你能告诉我在哪里使用 MVC,它是否起到某种保护作用?我所理解的是一个人向Controller发出请求,例如,他调用用户输入的页面,然后页面(.php文件)调用一些方法。我都明白了!
{
if(id==null)
return RedirectToAction("Index");
ViewBag.Rez = id;
return View();
}
[HttpPost]
public string Buy(Order order, Phone phone)
{
db.Orders.Add(order);
db.SaveChanges();
phone.Count--;
db.Phones.Update(phone);
db.SaveChanges();
return "Спасибо, " + order.User + ", за покупку!";
}
有一个 Phone 类,它有一个 Count 属性(商品的余额),但是当它被出售时余额不会改变。或者您需要创建第三个变量来保存数据。
我有一个 ASP.NET Core MVC 应用程序。有一个用于编辑组的表格。
来自控制器的代码:
public IActionResult EditGroup(int? id)
{
if (id != null)
{
var group = _unitOfWork.Groups.Get((int)id);
if (group != null)
return View(group);
}
return NotFound();
}
[HttpPost]
public IActionResult EditGroupPost(Group group)
{
_unitOfWork.Groups.Update(group);
_unitOfWork.Save();
return RedirectToAction("Index");
}
查看代码:
@model University.Core.Models.Group
@{
ViewData["Title"] = "EditGroup";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h1>Edit Group</h1>
<form asp-action="EditGroupPost" asp-controller="home" asp-route-id="@Model.Id">
<div class="form-group">
<label asp-for="Name" class="control-label">Name</label>
<input type="text" asp-for="Name" class="form-control" />
</div>
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
</form>
团体课:
public class Group
{
public int Id { get; set; }
public int CourseId { get; set; }
public string Name { get; set; }
}
输入Group
值为CourseId
1 的视图,离开值为 0 的视图
可能是什么原因?
有一个代码:
@{ string tempClass = ViewBag.IsCreate ? "enabled" : " disabled";}
<div class="text-primary h3 text-left col-2 pl-0">Скидка</div>
@Html.DropDownListFor(m => m.GroupDiscount, new SelectList(GroupsDiscount, "Key", "Value"), htmlAttributes: new { @class = "form-control selectedDiscountGroup col-md-10", @disabled=tempClass })
if = true如何ViewBag.IsCreate
删除该属性disabled
?否则没有任何效果