我只是掌握了MVC框架,我常常想知道模型中应该有多少代码.我倾向于有一个数据访问类,其方法如下:
public function CheckUsername($connection, $username)
{
try
{
$data = array();
$data['Username'] = $username;
//// SQL
$sql = "SELECT Username FROM" . $this->usersTableName . " WHERE Username = :Username";
//// Execute statement
return $this->ExecuteObject($connection, $sql, $data);
}
catch(Exception $e)
{
throw $e;
}
}
Run Code Online (Sandbox Code Playgroud)
我的模型往往是映射到数据库表的实体类.
模型对象是否应具有所有数据库映射属性以及上面的代码,或者可以将实际上数据库工作的代码分开吗?
我最终会有四层吗?
我一直在为我的新工作学习Zend及其MVC应用程序结构,并发现使用它只是困扰我,原因是我无法完全理解.然后在学习过程中,我遇到了一些文章,如MVC:No Silver Bullet以及关于MVC和Web应用程序主题的播客.播客中的那个人对MVC作为一个Web应用程序架构提出了非常好的理由,并且扼杀了许多让我烦恼的东西.
但问题仍然存在,如果MVC不适合Web应用程序,那么它是什么?