【发布时间】:2010-12-24 12:17:37
【问题描述】:
我正在使用带有 ORM(Doctrine 2)的 MVC 框架(Zend 框架)。乍一看,答案似乎是模型。但经过一番思考,我想知道它是否应该在控制器中。我指的是像
这样的功能static function addProduct($name, $desc, $quantity, $price) {
$product = new Product();
$product->name = $name;
$product->desc = $desc;
$product->quantity = $quantity;
$product->price = $price;
$em->persist($product);
$em->flush();
}
这样的功能看起来还可以。但是如果我允许通过 AJAX 进行内联编辑。例如。只需编辑产品名称,我想在我的控制器中,我会使用类似
$product->setName($name);
$em->flush();
但是既然无论如何我的控制器中都需要一个实体管理器$em,它会像我的控制器中的数据库代码一样吗?这是否意味着我做错了?或者也许我可以做类似的事情
$product = new Product();
$product->setName($name);
$product->setDesc($desc);
$product->setQuantity($quantity);
$product->setPrice($price);
$em->persist($product);
$em->flush();
在我的控制器中?
【问题讨论】:
标签: ajax model-view-controller zend-framework orm doctrine-orm