Забыл написать, как вызвать engine из application.py?
четверг, 31 мая 2012 г., 22:07:52 UTC+6 пользователь Zhanat Suleimenov написал:Доброго времени суток! Вопрос:--Как вызвать и передать параметры локальной переменной из другого модуля? листинг ниже# view.pyimport tenjinfrom tenjin.helpers import *from os import pathdef templ(title_var, items):....template_path = path.join(path.dirname(__file__), 'static/templates')....engine = tenjin.Engine(path=[template_path])....templ_var = {'title': title_var,'items': items,}#application.pyfrom view import *def __index(request):if request.method == "POST":#код не относящийся к темеif result is None:items = 'Account is available' # Присвоить значение items в view.py
Группа: http://groups.google.com/group/better-python-ru
Отписка: better-python-...@googlegroups.com
5 июня 2012 г., 16:13 пользователь Zhanat Suleimenov
<suleimen...@gmail.com> написал:
> Спасибо за ответ. Весьма полезно!
> У меня возник ещё один вопрос:
>
> #init.py
>
> #!/usr/bin/python26
> # -*- coding: utf-8
> import os
> from gevent.pywsgi import WSGIServer
> from werkzeug.wsgi import SharedDataMiddleware
> from werkzeug.wrappers import Request, Response
> from werkzeug.wsgi import responder
> from werkzeug.routing import Map, Rule
> from application import *
>
>
>
> @responder
> def application(environ, start_response):
> request = Request(environ)
> urls = url_map.bind_to_environ(environ)
> return urls.dispatch(lambda e, v: views[e](request, **v), # request
> catch_http_exceptions=True)
> if __name__ == '__main__':
> print 'Serving on 8000...'
> WSGIServer(('', 8000), application).serve_forever()
>
>
> #application.py
>
> from werkzeug.routing import Map, Rule
> from os import path
> from db import db
> import view
>
>
> url_map = Map([
> Rule('/', endpoint='index'),
> Rule('/login', endpoint='login'),
> Rule('/talk', endpoint='talk'),
>
> ])
> views = {
> 'index': view.__render_index( request, 'index' ), # Тут нужно вызвать
> функцию с аргументами variable = 'index', а что передать вместо request?
> Если не писать request выдает ошибку - не хватает аргументов
> 'login':view.__render_login,
> 'talk': view.__render_talk,
> }
>
>
> def __render_index(request, variable):
> _title = None
> _template = { 'title': _title,'items': variable , }
> return Response(engine.render('index.html', _template),
> mimetype='text/html')
а запихать в request variable='index' низя?
5 июня 2012 г., 16:13 пользователь Zhanat Suleimenov
и я так понимаю request скорее всего содержит например GET переменные,
поэтому логично "index' которая возможно может фигурировать в get
запросе, можно записахать в request, типа вида request.get['wariable']
= index
6 июня 2012 г., 7:54 пользователь Zhanat Suleimenov
<suleimen...@gmail.com> написал:
>> > Отписка: better-python-...@googlegroups.com
>
> --
> Группа: http://groups.google.com/group/better-python-ru
> Отписка: better-python-...@googlegroups.com
6 июня 2012 г., 16:23 пользователь Zhanat Suleimenov
<suleimen...@gmail.com> написал:
> Request это обертка для environ. Это кусок из документации werkzeug
>
> The request and response objects wrap the WSGI environment or the return
> value from a WSGI application so that it is another WSGI application (wraps
> a whole application).
>
>
>
>
> среда, 6 июня 2012 г., 11:46:58 UTC+6 пользователь u960 написал:
>>
>> request это не environ
>>
>> и я так понимаю request скорее всего содержит например GET переменные,
>> поэтому логично "index' которая возможно может фигурировать в get
>> запросе, можно записахать в request, типа вида request.get['wariable']
>> = index
>>
>> 6 июня 2012 г., 7:54 пользователь Zhanat Suleimenov
переменные гет запроса откуда берутся? из request?
6 июня 2012 г., 16:23 пользователь Zhanat Suleimenov
>> >> > Отписка: better-python-ru+unsubscribe@googlegroups.com
>> >
>> > --
>> > Группа: http://groups.google.com/group/better-python-ru
>> > Отписка: better-python-ru+unsubscribe@googlegroups.com
>
> --
> Группа: http://groups.google.com/group/better-python-ru
> Отписка: better-python-ru+unsubscribe@googlegroups.com
request.get['wariable'] = index
def __render_index( request):
7 июня 2012 г., 0:35 пользователь Zhanat Suleimenov
<suleimen...@gmail.com> написал:
>>> >> >> > Отписка: better-python-...@googlegroups.com
>>> >> >
>>> >> > --
>>> >> > Группа: http://groups.google.com/group/better-python-ru
>>> >> > Отписка: better-python-...@googlegroups.com
>>> >
>>> > --
>>> > Группа: http://groups.google.com/group/better-python-ru
>>> > Отписка: better-python-...@googlegroups.com
>
> --
> Группа: http://groups.google.com/group/better-python-ru
> Отписка: better-python-...@googlegroups.com
>>> >> >> > Отписка: better-python-ru+unsubscribe@googlegroups.com
>>> >> >
>>> >> > --
>>> >> > Группа: http://groups.google.com/group/better-python-ru
>>> >> > Отписка: better-python-ru+unsubscribe@googlegroups.com
>>> >
>>> > --
>>> > Группа: http://groups.google.com/group/better-python-ru
>>> > Отписка: better-python-ru+unsubscribe@googlegroups.com
>
> --
> Группа: http://groups.google.com/group/better-python-ru
> Отписка: better-python-ru+unsubscribe@googlegroups.com