Как вы передаете или делитесь переменными между представлениями django?

Я немного потерял, как это сделать:

У меня есть несколько связанных полей выбора, с одним полем выбора для каждого представления. Каждый выбор должен быть сохранен, чтобы запрос был построен. В конце запрос должен быть запущен.

Но как вы разделяете состояние в django? Я могу перейти из представления в шаблон, но не из шаблона в просмотр и не из просмотра в просмотр. Или я действительно не знаю, как это сделать. Пожалуйста помоги!


person Hugh    schedule 03.04.2010    source источник


Ответы (3)


Поместите значения для хранения в сеанс .

person Ignacio Vazquez-Abrams    schedule 03.04.2010

Есть много способов... в представлении шаблона... поместить переменные в скрытые поля форм. Поэтому, когда вы «отправляете» в последующих формах... значения затем содержатся в следующем request.POST.get().

Конечно, вы также можете хранить различные элементы данных в таблице БД (на диске или оперативной памяти) между представлениями... используя session_id в качестве ключа в хранилище данных. (не рекомендуется для систем с балансировкой нагрузки).

И мое меньше всего любимое печенье. (см. API для хранения файлов cookie)

ОБНОВЛЕНИЕ: извините, здесь нет примеров кода... документы довольно легко читать. Существует также веб-сайт djangosnippets, который вы используете для поиска примера кода.

person Richard    schedule 03.04.2010

Вы можете хранить такую ​​информацию в сессии, как сказал Игнасио Васкес-Абрамс. или используйте django-flash - (использование django-flash)

person grucha    schedule 04.04.2010