Я новичок в платформе Zend, поэтому, пожалуйста, несите меня.Zend Simple View-Controller-Model Guidelines
У меня есть контроллер, взаимодействующий с моделью, а затем отправьте эту информацию в представление. В настоящее время мой код выглядит примерно так:
//Controller
$mapper = new Application_Model_Mapper();
$mapper->getUserById($userID);
$this->view->assign('user_name', $mapper->user_name);
$this->view->assign('about', $mapper->about;
$this->view->assign('location', $mapper->location);
//Model
class Application_Model_Mapper
{
private $database;
public $user_name;
public $about;
public $location;
public function __construct()
{
$db = new Application_Model_Dbinit;
$this->database = $db->connect;
}
public function getUserById($id)
{
$row = $this->database->fetchRow('SELECT * FROM my_table WHERE user_id = '. $id .'');
$this->user_name = $row['user_name'];
$this->about = $row['about'];
$this->location = $row['location'];
}
}
//View
<td><?php echo $this->escape($this->user_name); ?> </td>
<td><?php echo $this->escape($this->about); ?></td>
<td><?php echo $this->escape($this->location); ?></td>
Этот код, очевидно, не в полном объеме, но вы можете себе представить, как я пытаюсь работать с моделью. Мне интересно, если это хорошая стратегия кодирования Zend?
Мне интересно, потому что, если бы у меня было больше данных, чтобы вытащить из модели, контроллер начинает становиться довольно большим (по одной строке на элемент), и у модели много публичных элементов данных.
Я не могу не думать, что есть лучший способ, но я стараюсь избегать прямого доступа к модели.
Спасибо заранее!
отличные слайды, спасибо! –