Добрый день, Денис
> Добрый день, Артем.
>
> Неплохо было бы написать используемую версию QPS и PPA.
PPA и QPS взяты с cvs (не мной), файлы Entries в папках CVS выглядит так:
(для PPA):
/.cvsignore/1.1/Fri Apr 9 13:42:59 2004//
/LICENSE/1.1.1.1/Fri Apr 9 13:18:10 2004//
/MANIFEST.in/1.1/Fri Apr 9 13:44:13 2004//
/STYLE/1.1.1.1/Fri Apr 9 13:18:10 2004//
/setup.py/1.1/Fri Apr 9 13:44:13 2004//
D/PPA////
D/tests////
(для QPS):
D/bin////
D/qps////
/.cvsignore/1.3/Sun Mar 21 07:52:09 2004//
D/themes////
D/protosites////
/MANIFEST.in/1.2/Mon Apr 19 07:38:18 2004//
/setup.py/1.9/Wed Jun 30 11:53:35 2004//
Судя по небольших различиях в размерах файлов, в приложении несколько модифицированные
PPA 0.26 и QPS 2.7
> Судя по
> сообщениям об ошибках, ты воспользовался прототипом large. Как минимум
> в CVS HEAD он сейчас в нерабочем состоянии, причем не работает очень
> многое - я бы не рекомендовал его пока использовать, разве что как
> пример возможностей. Остальные прототипы должны работать при минимуме
> подпиливания, а в последнем релизе - сразу.
>
Моя задача сейчас заключается в том, чтоб перенести работающее приложение с одной
платформы на другую, по возможности не меняя его. Т.е. по мнению тех, кто мне дал это
приложение, оно у них замечательно работало, только на несколько устаревшей системе:
Red Hat Linux 7.3, Apache 1.3, зато Python 2.4, я пытаюсь это все перенести на Debian
Sarge 3.01
> Ошибка в шаблоне выглядит для меня странной. Судя по трейсбеку, из
> шаблона login.pyem рендерится inc_top.pyem, при этом во второй не
> передается brick. Это странно, так как в теме respublika в шаблоне
> login не используется inc_top, а в marine все передается и ошибки быть
> не должно. Может шаблоны менялись?
Да, я не совсем корректно выразился: в приложении используется respublika (судя по
записи в edit.py), а при установке я пытался подставить и respublika и marine, и в
последний момент забыл поменять их местами. На самом деле приложение выдает тот же
traceback, за исключением последней строчки:
File "inc_top.pyem", line 5, in ?
NameError: name 'title' is not defined
т.е. пытается импортировать title из шаблона inc_top.pyem, но не находит его.
И шаблон login.pyem менялся, причем довольно сильно:
<%= template('inc_top') %>
<%= template('menu', **globals()) %>
<%= template('login_body') %>
<%= template('inc_bottom') %>
>
> P.S. На рассылку лучше подписаться, чтобы не ждать подтверждения
> модератора для каждого посылаемого письма.
>
> On 9/11/06, Глотов Артем <glar@...> wrote:
> > Здравствуйте. У меня проблема с установкой web-приложения, написанного при помощи
PPA
> > и QPS. Насколько я понял, изнутри шаблона не видно неких внешних переменных, вот
> > запись из лога приложения:
> >
> > 2006-09-11 20:29:37,964: ERROR: Handler : Unhandled exception
for /code/edit.py
> > Traceback (most recent call last):
> > File "/usr/local/apache/htdocs/code/Handler.py", line 41, in handle
> > self.commands.handle(request, response)
> > File "/usr/local/lib/python2.4/site-packages/qps/qEdit.py", line 273, in handle
> > self.cmd_notAuthorized(request, response, form, objs, user)
> > File "/usr/local/lib/python2.4/site-packages/qps/qSecurity.py", line 194, in
> > cmd_notAuthorized
> > response.write(template('login', brick=obj))
> > File "/usr/local/lib/python2.4/site-packages/qps/qWebUtils.py", line 88, in
__call__
> > result = self.publisher.getTemplate(template_name)(ns)
> > File "/usr/local/lib/python2.4/site-packages/qps/qWebUtils.py", line 29, in
__call__
> > self.interpret(fp, namespace, kwargs)
> > File "/usr/local/lib/python2.4/site-packages/PPA/Template/Controller.py", line
39,
> > in interpret
> > interpret_dep_reg.getTemplate)
> > File
> > "/usr/local/lib/python2.4/site-packages/PPA/Template/Engines/PythonEmbedded.py",
line
> > 204, in interpret
> > exec program in globals, locals
> > File "login.pyem", line 0, in ?
> > File "/usr/local/lib/python2.4/site-packages/qps/qWebUtils.py", line 88, in
__call__
> > result = self.publisher.getTemplate(template_name)(ns)
> > File "/usr/local/lib/python2.4/site-packages/qps/qWebUtils.py", line 29, in
__call__
> > self.interpret(fp, namespace, kwargs)
> > File "/usr/local/lib/python2.4/site-packages/PPA/Template/Controller.py", line
39,
> > in interpret
> > interpret_dep_reg.getTemplate)
> > File
> > "/usr/local/lib/python2.4/site-packages/PPA/Template/Engines/PythonEmbedded.py",
line
> > 204, in interpret
> > exec program in globals, locals
> > File "inc_top.pyem", line 6, in ?
> > NameError: name 'brick' is not defined
> > 2006-09-11 20:29:37,967: ERROR: PPA.HTTP.Base : Unhandled exception
for /code/edit.py
> > Traceback (most recent call last):
> > File "/usr/local/lib/python2.4/site-packages/PPA/HTTP/Base.py", line 197, in
> > __call__
> > self.handle(request, response)
> > File "/usr/local/apache/htdocs/code/Handler.py", line 50, in handle
> > self.InternalServerError("<pre>%s</pre>" % getException())
> > File "/usr/local/apache/htdocs/code/Handler.py", line 54, in renderError
> > template = self.commands.renderHelperClass(
> > TypeError: __init__() takes at least 3 arguments (2 given)
> >
> > А браузер выдает 500 ошибку, в журнал ничего не пишет.
> > Apache/1.3.33 (Unix) mod_python/2.7.8 Python/2.4.3
> >
> > Настройка apache:
> > <Directory /usr/local/apache/htdocs/code>
> > AddHandler python-program .py
> > PythonHandler edit::handler
> > PythonPath "['/usr/local/apache/htdocs/code']+sys.path"
> > PythonDebug On
> > </Directory>
> >
> > Вроде вся информация, если у кого-нибудь есть идеи по этому поводу, буду рад!
> >
> > Артем.
>
Если нужно, могу вставить коды интересующих файлов из приложения.
На рассылку я подписался.
Спасибо за помощь,
Артем.
|