Найти - Пользователи
Полная версия: Состояние обьектов между запросами
Начало » Django » Состояние обьектов между запросами
1 2
gonandriy
Сохраняет ли джанго состояние обьектов между двумя НТТР запросами?
например есть код:

 
class _Registry(object):
obj = None
def __new__(cls, *dt, **mp):
if cls.obj is None:
cls.obj = object.__new__(cls,*dt,**mp)
return cls.obj
Если в obj бил создан атрибут с определённым значением то будет ли он виден в следующем запросе?
У меня ситуацыя, когда некое сообщений виводиться в зависимости от етого аргумента, и после того как я опять загружаю страницу где код по установке етого аргумента точно не выполнялся ето сообщение всё же есть.
Александр Кошелев
gonandriy
Сохраняет ли джанго состояние обьектов между двумя НТТР запросами?
На этот вопрос невозможно ответить однозначно, пока вы не расскажите каким образом вы джангу запускаете.

При разных способох деплоя поведение может меняться.

И конечно же шаренный стейт надо передавать через хранилища данных, а не через код.
gonandriy
Джангу запускаю через его сервер HTTP server (manage.py runserver)

Daevaorn
Через хранилища данных
имеете ввиду через файловую систему или базу?
Александр Кошелев
gonandriy
имеете ввиду через файловую систему или базу?
В том числе.
Александр Кошелев
gonandriy
Джангу запускаю через его сервер HTTP server (manage.py runserver)
Да, в этом случае все запросы обрабатываются в одном процессе.
gonandriy
Daevaorn
Да, в этом случае все запросы обрабатываются в одном процессе.
А как в случае mod_wsgi для апача?
gonandriy
Как может бить видно из приведенного кода ето попытка сделать единый реестр объетков для всего приложения.
Мне кажеться ипользовать базу или файлы для етих целей слишком нерацынально.
Можно как то в памяти сделать общую область ?
Александр Кошелев
gonandriy
А как в случае mod_wsgi для апача?
Опять-таки зависит от настроек.
gonandriy
Мне кажеться ипользовать базу или файлы для етих целей слишком нерацынально.
Говорить о рациональности, видя этот код, я не могу. Всё очень сильно зависит от ваших задач и целей.
gonandriy
Спасибо, Daevaorn
Я немного модифицировал скрипт і сейчас удаляю все поля пере завершением работы

Не подскажете как наиболее практично пеализовать синглетон на Python/Django?
Александр Кошелев
gonandriy
Не подскажете как наиболее практично пеализовать синглетон на Python/Django?
Обычно синглтон в питоне – это переменная на уровне модуля. Но она single в рамках одного процесса. Если приложение работает в нескольких процессах, то тут опять-таки надо шарить стейт через какое-то общее хранилище.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB