Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Новости TYPO3-разработки (http://forum.typo3.ru/forumdisplay.php?f=20)
-   -   TYPO3 5.0 Brainstorming Results (http://forum.typo3.ru/showthread.php?t=1724)

Valery Romanchev 19.08.2006 18:40

TYPO3 5.0 Brainstorming Results
 
Есть на что посмотреть
http://typo3.org/teams/5.0-development/documents/
no separation of BE/FE
no backward compatibility (будут естетвенно инструменты миграции)

Dutchak Vitaly 19.08.2006 19:16

Самое главное "best separation of logic and presentation" и Templating API, то чего не хватало очень сильно и прихожилось юзать samrty,возможно его и встроят в ядро в модифицированном виде.

Valery Romanchev 19.08.2006 19:22

Цитата:

Сообщение от Dutchak Vitaly
Самое главное "best separation of logic and presentation" и Templating API, то чего не хватало очень сильно и прихожилось юзать samrty,возможно его и встроят в ядро в модифицированном виде.

Так вроде TS дает все возможности smarty...
Маркеры, subparts в TS есть, условия есть.. зачем что-то еще?

Dutchak Vitaly 19.08.2006 19:27

проблема в том, что полностью логика и представление не отделялось и куски Html кода были в модулях. по правилам программирования, логика должна полностью отделена от представления. если в смарти встроить связь с Ts и написать 50 плагинов, то это будет мощнейший инструмент, а также большой плюс в TYPO3. он будет что-то вроде связки между TS и PHP

Valery Romanchev 19.08.2006 19:31

Цитата:

проблема в том, что полностью логика и представление не отделялось и куски Html кода были в модулях.
дык, так не должно быть :-)
и нет особой проблемы в том, чтобы выносить весть HTML код в TS и во внешние HTML-шаблоны, которые через этот TS подцепляются.

Dutchak Vitaly 19.08.2006 19:34

вот именно что надо полностью отделять Html от Php. и не в Ts выносить, а в отдельные файлы.

Valery Romanchev 19.08.2006 19:47

Цитата:

Сообщение от Dutchak Vitaly
вот именно что надо полностью отделять Html от Php. и не в Ts выносить, а в отдельные файлы.

ну так навигацию же все равно надо в TS делать... Или в смарти все эти wrap'ы и optionSplit для навигации писать? Этож убиться...
Конечно можно их и в PHP писать, но тогда там внурти будет HTML-код, чего не хочется.

Поэтому, ИМХО, TS - это нормальный и правильный способ.

И ничто не мешает выносить отдельные куски в HTML файлы, которые содержат только ###SOME_MARKER### или используется subparts.

Dutchak Vitaly 19.08.2006 19:51

Я про extension developpment. А не про TS шаблоны для сайта.

Valery Romanchev 19.08.2006 19:53

Цитата:

Сообщение от Dutchak Vitaly
Я про extension developpment. А не про TS шаблоны для сайта.

дык разницы никакой нет.
Одно и тоже используется и там и там

см. http://wiki.typo3.org/index.php/Exte...HTML-Templates

Dutchak Vitaly 19.08.2006 20:15

наверно не правильно понимают разделение логики и представления.

Это обозначает, что логика - это чистый PHP + минимумуправлением вывода (например сохранение вывода в перменную $content или print), а так же передача данных в шаблонизатор. Т.е никакие части кода вы не генерите в PHP коде. А все остальное делает шаблонизатор. Например, при использовании маркеров и шаблонов так, как сейчас оно есть, вы "передаете" в файл шаблона какие-то части вывода. по сути вы просто делаете обыкновенный str_replace. А части - уже готовые HTML куски.

При использовании шаблонизатора, вы только передаете данные в шаблон, именно передаете а не делаете замену, а в шаблоне вызываете те или иные дейсвия с ними. Например чтобы вывести картинку с помощью TS и TYPO3 я делаю вот что:

В ПХП:
PHP код:

       ...
    function 
drawPreviewData(){
        
$this->tpl->assign ('item',$this->shopData->loadProduct());
        
$this->content $this->tpl->display ('product_preview.tpl');
    }
       ... 


В ШАБЛОНЕ:
Код:

  ...
    <div class="smallImage"> {typo3_img field=image width=150 height=150 item=$item}</div>
  ...



Имеем полное разделение Логики и представления. Это как бы свзяка между TS, который генерится в плагине typo3_img и PHP, который управляет всей логикой модуля.

Вы когда-нибудь пытались изменить в tt_news полностью отображение новости не залезая в код?

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

Или приятно вам копаться newloginbox, когда он был еще без шаблонов?

Главное, чторазработчики поняли, что надо обязательно делать Templating API и улучшать разделение логики от представления. У меня со многими были споры на эту тему, никто меня не смог переубедить в этом всем.


Часовой пояс GMT +4, время: 11:04.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot