Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> HTML::Template ->> HTML::Template::Compiled 
V
    Опции темы
gcc
Дата 17.1.2011, 00:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



на одной странице есть  2 двумерных цикла:
     
Код

 <TMPL_LOOP NAME="index_new">


   <TMPL_LOOP NAME="COLUMNS">

   </TMPL_LOOP>



   </TMPL_LOOP>


      <TMPL_LOOP NAME="index_last">


   <TMPL_LOOP NAME="COLUMNS">
   </TMPL_LOOP>



   </TMPL_LOOP>




из-за них вылетает ошибка:
Код

Couldn't render template "/home/catalyst/root/view.tt". Error: "Can't use string ("") as a HASH ref while "strict refs" 
in use at /usr/local/lib/perl5/site_perl/5.8.9/HTML/Template/Compiled.pm line 1035."



включен:
Код

 global_vars => 1,


если поставить один цикл, все работает...!

во-втором цикле пробовал поменять название COLUMNS на 2COLUMNS2:

Код

      <TMPL_LOOP NAME="index_last">


   <TMPL_LOOP NAME="2COLUMNS2">
   </TMPL_LOOP>



   </TMPL_LOOP>



пишет все вермя, тоже самое...

в чем может быть проблема?
какие могут быть вараинты чтобы исправить?

Это сообщение отредактировал(а) gcc - 17.1.2011, 01:19
PM WWW ICQ Skype GTalk Jabber   Вверх
arto
Дата 17.1.2011, 01:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



.COLUMNS ?

посмотреть на global_vars, и работу со вложенными циклами.
PM MAIL ICQ   Вверх
gcc
Дата 21.5.2011, 01:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



может кому-то пригодиться

нашел, есть структура в отладке

Код

{
                               'COLUMNS' => [
                                              {
                                                'name_pf' => undef,
                                                'hidden_pf' => '0',
                                                'id_pf' => '14251',
                                                'id_un' => '1',
                                                'hidden_pa' => '0',
                                                'see' => 1,
                                                'username' => 'ProFTP',
                                                'created' => '1304272855',
                                                'viewing' => '4',
                                                'id_pa' => '836',
                                                'description_pf' => undef,
                                                'y_pf' => '330',
                                                'x_pf' => '250',
                                                'size_pf' => '0.1'
                                              },
                                              '',
                                              '',
                                              ''
                                            ]
                             }


надо убрать вот это:
Код

                                              '',
                                              '',
                                              ''

или заменить на что угодно, я заменил на пустой хэш 
Код

{}

PM WWW ICQ Skype GTalk Jabber   Вверх
myth777
Дата 23.5.2011, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 30.3.2009

Репутация: -1
Всего: -1



Попробуйте установить
Код

die_on_bad_params=>0

при создании HTML::Template

Это сообщение отредактировал(а) myth777 - 23.5.2011, 12:22
PM MAIL   Вверх
arto
Дата 23.5.2011, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



  MISSING FEATURES
       There are some features of H::T that are missing.  I'll try to list them here.

       "die_on_bad_params"
           I don't think I'll implement that.

PM MAIL ICQ   Вверх
gcc
Дата 23.5.2011, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



еще когда параметр называется в шаблоне

Код

<TMPL_VAR NAME="PAGE">


а хэш стоит $c->stash->{page}
в HTML::Template  - это срабатывало как одно и тоже, регистр игнорировался

а в HTML::Template::Compiled надо менять... на $c->stash->{PAGE}




Это сообщение отредактировал(а) gcc - 23.5.2011, 15:17
PM WWW ICQ Skype GTalk Jabber   Вверх
myth777
Дата 25.5.2011, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 30.3.2009

Репутация: -1
Всего: -1



Цитата(arto @ 23.5.2011,  13:45)
MISSING FEATURES
       There are some features of H::T that are missing.  I'll try to list them here.

       "die_on_bad_params"
           I don't think I'll implement that.


Код

HTML::Template->new(filename => path_to_file.htm, die_on_bad_params=>0);

PM MAIL   Вверх
arto
Дата 25.5.2011, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



вроде используют HTML::Template::Compiled, не?
PM MAIL ICQ   Вверх
myth777
Дата 25.5.2011, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 30.3.2009

Репутация: -1
Всего: -1



Цитата(arto @ 25.5.2011,  15:04)
вроде используют HTML::Template::Compiled, не?

Ну да, пардон. Придется значит следить за тем что передаете. А функционала  HTML::Template не хватает что ли? 

Это сообщение отредактировал(а) myth777 - 25.5.2011, 17:19
PM MAIL   Вверх
arto
Дата 25.5.2011, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



HTML::Template не поддрживает шаблоны в utf8, например.

PM MAIL ICQ   Вверх
myth777
Дата 26.5.2011, 07:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 30.3.2009

Репутация: -1
Всего: -1



Цитата(arto @ 25.5.2011,  17:26)
HTML::Template не поддрживает шаблоны в utf8, например.

Здрасти приехали, у меня почему то работает.
А вот реализация на c++ нет.
PM MAIL   Вверх
arto
Дата 26.5.2011, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



прямо из коробки?
без патченья?
PM MAIL ICQ   Вверх
gcc
Дата 26.5.2011, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



Цитата(myth777 @ 25.5.2011,  17:10)
HTML::Template не хватает что ли?

время генерации большой страницы с циклами и т.д. идет порядка ~3-8сек. и сильно грузит CPU сервера, кэширование не помогает

кэширование в HTML::Template::Compiled ускорило ЭТО порядка 0.1-1.5сек.

Это сообщение отредактировал(а) gcc - 26.5.2011, 12:15
PM WWW ICQ Skype GTalk Jabber   Вверх
myth777
Дата 26.5.2011, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 30.3.2009

Репутация: -1
Всего: -1



Цитата(gcc @ 26.5.2011,  12:14)
Цитата(myth777 @ 25.5.2011,  17:10)
HTML::Template не хватает что ли?

время генерации большой страницы с циклами и т.д. идет порядка ~3-8сек. и сильно грузит CPU сервера, кэширование не помогает

кэширование в HTML::Template::Compiled ускорило ЭТО порядка 0.1-1.5сек.

Да, пряма из коробки(Debian).
У меня до 800 записей из  таблицы в LOOP подсовываются на одной странице, отображаются нормально. 
Разбивать страницы не пробовали?

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0630 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.