![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| NuINu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 131 Регистрация: 19.7.2008 Репутация: 5 Всего: 6 |
в шаблоне
я же уже говорил операции user и user_exist добавляются к объекту $c при подключении плагина Authentication Это просто название моего приложения. Глобальный класс. вот так вот как у вас: my @pkg = qw(MyApp MyApp::Controller::Root); должно работать. разве что приложение называется не MyApp ну и поместите эту функцию в тот модуль в котором вы ее вызываете... что то я сомневаюсь что вы ее правльно вызываете... я ее так просто для примера нарисовал. совершенно другое... но я с отладкой не сильно разбирался... вроде я уже писал как выводить отладочные сообщения? кхм... странно.. значит показалось- дежа вю в мануале все написано: $c->log->info("Starting the foreach loop here"); $c->log->debug("Value of \$id is: ".$id); site_perl/5.8.8/Catalyst/Manual/Tutorial/Debugging.pod Это сообщение отредактировал(а) NuINu - 6.2.2009, 09:47 |
|||
|
||||
| gcc |
|
||||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
сори, забыл сказать шаблон HTML::Template не работает
Это сообщение отредактировал(а) gcc - 6.2.2009, 13:48 |
||||||
|
|||||||
| NuINu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 131 Регистрация: 19.7.2008 Репутация: 5 Всего: 6 |
ну делов то смотришь доку: Catalyst::View::HTML::Template там все передельно ясно написано:
таким образом к объекту $c используя данный шаблонизатор ты никогда не обратишься. способов это обойти море! создай переменную в $c->stash->{c} = $c; можешь это сделать в методе Root::end или просто создай(т.к я не уверен что в этом шаблонизаторе будут вызываться методы) $c->stash->{user_exists} = $c->user_exists; $c->stash->{username} = $c->user->username; |
|||
|
||||
| gcc |
|
||||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
метода $c->user->username нету
это работает: (0 или 1)
это возвращает ссылку на хеш, не знаю что с ней делать, при разыменовании ключ и значение: число 1/8
отлдаку опять не получилось сделать, не знаю что это за хэш...
пробую делать отладку... Это сообщение отредактировал(а) gcc - 6.2.2009, 15:32 |
||||||
|
|||||||
| NuINu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 131 Регистрация: 19.7.2008 Репутация: 5 Всего: 6 |
||||
|
||||
| gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
вот отладка
должно быть так
но ничего не выводит, пустое значение... Это сообщение отредактировал(а) gcc - 6.2.2009, 15:42 |
||||
|
|||||
| NuINu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 131 Регистрация: 19.7.2008 Репутация: 5 Всего: 6 |
ну, вывел в отладку то ты что? какую переенную?
хочешь сказать что я это из воздуха взял? 'username' => 'test01' - из вывода твоей же отладки. ищите и обрящете! |
|||
|
||||
| gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
в том и проблема что должно работаеть, но не хочет выводить
что делать дальше, как вывести? я что-то перепутал? Это сообщение отредактировал(а) gcc - 6.2.2009, 23:18 |
||||
|
|||||
| NuINu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 131 Регистрация: 19.7.2008 Репутация: 5 Всего: 6 |
$c->stash->{user_username} = $c->user->username;
на будущее, вас ни кто не заставлял выбирать нестандартный путь - HTML::Template, это ваш выбор, ну раз так, будте готовы приложить немного больше усилий для освоения этого пути, чем другие. первопроходцам всегда трудно. нехотите проблем или нет сил по для их преодоления выбирайте майнстрим. |
|||
|
||||
| gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
скажите пожалуйста, где вы увидели метод username ? метода нету
вопрос тот же, как разыменовать и получить имя пользователя? Это сообщение отредактировал(а) gcc - 7.2.2009, 14:57 |
||||
|
|||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
gcc, за время пока вы обсуждаете один вопрос, уже можно было открыть исходник модуля и посмотреть все нужные методы.
-------------------- Died at Life.pl line 21 |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
KSURi, я перепробывал все методы которые написаны в документаиции к модулю ( я про это писал)
а в отладке написано совсем другое... то что в документации нету... хэш видно в отладке с именем пользователя 'test01', не получается его разыменовать... Это сообщение отредактировал(а) gcc - 7.2.2009, 15:40 |
|||
|
||||
| NuINu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 131 Регистрация: 19.7.2008 Репутация: 5 Всего: 6 |
у меня этот медод есть. просто я использую другой класс Catalyst::Authentication::Store::RDBO::User связанный с ORM Rose в вашем случае Catalyst::Authentication::Store::DBI::User конечно его может и не быть. мой промах. ну тем не менее, попробовать разименовать уже то что вы получили в отладке то можно? там же есть переменная к которой можно обратиться, так в чем же дело? дамп чего вы там вывели? $c->user-? тогда так: $c->stash->{user_username} = $c->user->{user}->{username}; KSURi, посмотреть порблематично, дело в том что методы ацессоры добавляются прямо во время выполнения. и зависят от (в моем случае) от описания полей класса. gcc, а вы пробуйте, пробуйте. |
|||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
gcc, документация может быть неполной. Поэтому я и написал, что можно заглянуть в исходники.
NuINu, я так и думал. Но тема уже неделю в топе, думаю за это время можно было найти место где создаются аксессоры. -------------------- Died at Life.pl line 21 |
|||
|
||||
| gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
в исходниках модуля Catalyst::Authentication::Store::DBI и Catalyst::Authentication::Store::DBI::User, и по остальным, есть только два метода sub from_session sub find_user в котором идет работа с БД и все один запрос в каждом метода, дальше я не вижу где тот метода откуда берется имя пользователя, остается один вариант - только разыменовать из отладки (или нет?)
но я не знаю где это смотреть... Добавлено @ 19:22
извените. забыл сказать, дампером $c->user Это сообщение отредактировал(а) gcc - 7.2.2009, 19:41 |
||||
|
|||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |