CMF: Распределение обязанностей

С.

Продвинутый новичок
CMF: Распределение обязанностей

Теоретический вариант: программист пишет скрипты и подготавливает данные, дизайнер лепит шаблон и использует данные.

Теперь практический вариант:
- Программист подготовил необходимые данные.
- Теперь надо построить таблицу с этими данными. Таблица сложная. Какие-то ячейке выделяются цветом, какие-то объединяются и т.п. Чтобы обработать массив данных для представления таблицы, практическии надо быть программистом. Но для того что бы она была "в стиле" нужно быть дизайнером.

Вопрос: кто должен строить такую таблицу?

Варинат вопроса: Поскольку для построения подобной таблицы понадобится куча foreach'ей и if'ов, то куда лучше поместить этот код - в шаблон или в скрипт логики задачи?
 

Rammstein

PHPClub::News
Нужно правильно простроить архитектуру :)
А если уж так безвыходно, то тут всё зависит от верстальщика.
 

WP

^_^
Нужно уметь выделять логику представления в шаблон. Если по смыслу операции неизбежны каким бы ни был шаблон, то PHP, а если чисто дизайнерские изыски, то задача верстальщика. Современный дизайнер/верстальщик должен знать простой язык шаблонизаторов, они для них и писались.
 

ybilevych

Новичок
С.
А что значит "В стиле"?
Может собирать таблицу дать програмеру, а представление уложить в таблицу стилей, которую будет редактировать дизайнер?
 

svetasmirnova

маленький монстрик
Чтобы обработать массив данных для представления таблицы, практическии надо быть программистом.
Чтобы пройтись по подготовленному массиву с данными и разукрасить его по последней моде нужно быть программистом? Кстати, если уж на то пошло, HTML и JavaScript не языки программирования что ли?
 

С.

Продвинутый новичок
Rammstein
В заголовке значится: "CMF". Вопрос в том и состоит, как правильно построить архитектуру?

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

ybilevych
Как реально это реализовать? Есть входные даные для блока логики. Из них получаются выходные данные, которые работют, как входные для модуля представления. Допустим в модуле логики построится вся таблица. Как в модуле представления "наложить" на нее нужный дизайн?

-~{}~ 04.05.06 07:00:

Поясню суть задачи: даные организованы древовидно, а отобразить их надо в двумерной таблице. Для программиста это не проблема, а для дизайнера?

-~{}~ 04.05.06 07:05:

Ага, кажется напрашивается консенсусное решение: программист переводит дерево данных в двумерную матрицу и отдает ее на обработку дизайнеру.
 

crocodile2u

http://vbolshov.org.ru
Ага, кажется напрашивается консенсусное решение: программист переводит дерево данных в двумерную матрицу и отдает ее на обработку дизайнеру.
Дизайнер, думаю, будет плясать от восторга, увидев двумерную матрицу...

отобразить их надо в двумерной таблице
Зачем так щеголять этим словом - "двумерный"? Такое впечатление, что обычно вы работаете с трехмерными или одномерными таблицами, а вот сейчас заказчику вынь да положь двумерную...

Задача оформления таблицы - не для форума по программированию. Я в этом твердо уверен. Кстати, и CMF здесь - никаким боком. Таким названием темы вы только вводите в заблуждение посетителей форума.
 

С.

Продвинутый новичок
Автор оригинала: crocodile2u
Дизайнер, думаю, будет плясать от восторга, увидев двумерную матрицу...

Зачем так щеголять этим словом - "двумерный"? Такое впечатление, что обычно вы работаете с трехмерными или одномерными таблицами, а вот сейчас заказчику вынь да положь двумерную...
А уж как он запляшет, увидев ненормализованное дерово данных, с которыми я обычно работаю!

Автор оригинала: crocodile2u
Задача оформления таблицы - не для форума по программированию. Я в этом твердо уверен. Кстати, и CMF здесь - никаким боком. Таким названием темы вы только вводите в заблуждение посетителей форума.
Пока что в заблуждение ввелись только вы один. CMF, имещий язык шаблонов, подразумвает определенный уровень абстракции, за рамки которого не следует выходить. Иначе шаблон превращается в PHP, a CMF - в язык программирования. Я и задался вопросом, где провести этот уровень, чтобы CMF осталась CMF, а дизайнеру не пришлось бы переквалифицироваться в программиста.

Извините, если утомил вас.
 

С.

Продвинутый новичок
StUV, спасибо! Очень интересно. Процитирую некоторые высказывания:

Yurik
Меня интересует вопрос более глобальный и по мне более важный: должна ли быть логика в шаблона, если да - то сколько.

Подход 1.
В шаблоне никакой логики. Только представление. Что и куда вставлять решает полностью программист. В принципе полное разделение труда дизайнер/верстальщик/програмер, но программеру в этой ситуации не позавидуешь. Кроме того что его классы заточены под шаблон и не совсем reusable, в логику приложения попадает логика представления.

Подход 2.
В шаблоне есть логика представления. Например контекст указывает класс/метод который он вызывает, атрибуты/параметры, вложенность других шаблонов, условия

Какой подход используете Вы и чем Вы это аргументируете? Ибо есть много людей которые исключительно за 1 или за 2 подход.
Screjet
Решение простое: все что отображается на сайте должно быть легкодоступно для правки верстальщиком/оператором.

Логика в шаблоне не должна быть излишне сложной. Лучше, шаблоны, которые должны отображать по-разному, но одинаковые по содержанию, разделять на различные шаблоны, а не усложнять (до абсурда) логику в них. Для удобства, можно группировать шаблоны по каким-то критериям.
А в целом понял, что стандартного решения данного вопроса пока нет. Каждый делает по своему вкусу.
 
Сверху