理解mvc:库类和模型类之间的区别

nev*_*ame 2 php model-view-controller

所以我想遵循mvc惯例,但并没有真正掌握它.

我有理解模型和库类之间的明显差异以及它们如何相互关联的问题.

例如.我想创建类来添加/编辑联系人,并将它们添加到组中.

我认为它应该分为两类:联系和组.

第一堂课将创建一个联系人.另一个将联系人添加到组.我认为这种划分是完美的,因为他们的逻辑与彼此隔离.联系人不关心组是否存在.Group不关心联系人的样子.

所以Contact会有这些方法:

$Contact->add($name, $email, $address, $phone) // create an entry in database
$Contact->delete($id) // delete the entry in database
$Contact->edit($id, $name, $email, $address, $phone) // edit the entry in database
Run Code Online (Sandbox Code Playgroud)

和组:

$Group->createGroup($name) // create a group in database
$Group->delete($id) // delete a group in database
$Group->addContact($groupId, $contactId) // add a contact to a group in database
Run Code Online (Sandbox Code Playgroud)

所以这些类显然适用于数据库.这是否意味着这些是模特?或者他们是图书馆类,例如.应该放在CodeIgniter中的SYSTEM/LIBRARIES中.如果是后者,那么在这种情况下,模型如何使用类?

在这种情况下,控制器会如何?

如果有人能给我全局照片会很棒!谢谢!

Gor*_*don 5

MVC 模式没有库的概念.您所指的是MVC 框架的一般使用模式.这是一个模型文件夹,其中包含通常派生自通用,可重用和独立于应用程序库类的特定于应用程序的类.

  • @ajsie 是的,您可能可以重用它们,但是它们将是地址簿框架中的库类。你必须了解关键的区别。该模型包含构成应用程序核心的所有内容。它是特定于您的应用程序的所有业务逻辑、服务层、数据库适配器等。可以说,库是框架的模型,用于构建您的应用程序。那有意义吗? (2认同)