2010-11-23 3 views
1

Я играл вокруг Codeignter и было любопытно о структуре приложения:Когда использовать модель или помощник

  1. Я не уверен, когда использовать модель (по-видимому, оно не трудное требование)

  2. У меня есть часть заголовка, которая является динамической, поэтому я запускаю условные операторы (if() {..} else {..}) ради чистоты кода и четкости. Должен ли я превратить эту часть в помощника и ссылаться на нее вместо этого? Или это звучит как слишком много?

ответ

3

Модели лучше всего подходят для сбора данных и методов форматирования. Например, опрос базы данных для сообщений в блоге, а затем создание почтовых объектов и их возврат.

Затем контроллер использует их для заполнения представлений требуемыми данными, такими как заголовок, дата, автор и сокращенная сводка тела.

Что касается части заголовка, рассмотрите возможность создания меньших видов для инкапсуляции сложного кода, например, переключателя подсветки меню или ifs, вдали от более четкого кода. Подумайте о перестройке этих взглядов. Ничего плохого в том, что вы создаете представление только для одной вкладки в меню, а затем вызываете его 10 раз с разными данными для каждого из пунктов меню в другом представлении.

Хотя это кажется глупым для меню, оно становится незаменимым для использования, например, для обертывания виджетами или встроенной проверки в виде текстового поля.

+0

Уточнение: контроллеры предназначены для просмотра как для заполнения, так и для перевода запросов в изменения модели и дополнительные виды. – 2010-11-23 20:20:37

1

Я не уверен, когда использовать модель (по-видимому, оно не трудное требование)

Модели являются частью MVC структуры. Я бы рекомендовал вам прочитать об этом.

У меня есть часть заголовка, являются динамичными, бегаю условные операторы (если() {..} еще {..}) для кода чистоты и ясности я должен превратить эту часть в качестве помощника ? и ссылаться на него вместо этого? Или это звучит как слишком много?

В этой статье объясняется, как использовать: Helpers в CodeIgniter.

0

Вы должны использовать модель, если вы читаете/записываете данные в базу данных (или другой источник данных).

Вы должны использовать помощник, чтобы помочь вам в многоразовых задачах. Например, у вас может быть помощник проверки подлинности или помощник формы и т. Д.

Я бы подумал, что вы сможете расширить помощник, чтобы возвращать URL-адрес изображения с произвольным заголовком, который вы можете использовать в теге img, хотя прошло некоторое время с тех пор, как я работал с CodeIgniter.

Смежные вопросы