Лучший подход для контроля доступа / обработки данных объектов / моделей, передаваемых в View в Zend Framework - PullRequest
0 голосов
/ 25 ноября 2010

Я хочу передать данные в представления, и у меня есть два варианта (если вы знаете лучший подход, пожалуйста, укажите).
Я использую систему Zend_Based ORM и закодирован так, что еслидобавьте новое поле в базу данных, оно автоматически будет доступно внутри модели.

1-й: я преобразовываю данные модели в массив и передаю массив в представление.Таким образом, у меня будут все данные, доступные в представлении, но функции / операции модели будут недоступны.И в случае, если мне нужны конкретные функции, я буду кодировать помощников вида, хотя есть вероятность, что такая же функциональность уже закодирована в модели.например, получение даты в определенном формате.
2-й: или я передаю полный объект модели представлению, таким образом у меня будут доступны все функции модели, но представление сможет получить доступ к функции сохранения модели, что является плохимвещь.Я могу добавить некоторые дополнительные функции в модель, чтобы она была доступна только для чтения, но это будет дополнительная работа.

любые предложения, какой подход лучше.

1 Ответ

1 голос
/ 25 ноября 2010

В соответствии с принципом MVC вполне нормально позволить представлению разрешить доступ к модели . Итак, передайте полную модель в представление.

Кстати, передача массивов скопирует ваши данные (по значению), а передача объектов - нет (по ссылке). (Предполагая PHP5). Большие массивы могут повлиять на вашу производительность.

...