Я просто разбираюсь в структуре 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;
}
}
Мои модели обычно представляют собой класс сущностей, который сопоставляется с таблицей базы данных.
Должен ли объект модели иметь все свойства сопоставления базы данных, а также код выше или это нормально, чтобы отделить этот код, который фактически работает в базе данных?
В итоге у меня будет четыре слоя?