Найти - Пользователи
Полная версия: Не применяются переменные из файла py
Начало » Django » Не применяются переменные из файла py
1
Cruzka
Нужно исправить на сайте на Django (Python) кое-какие параметры.
Они выводятся через шаблон как-то так
 {% for time in delivery_types.1.times %} ...
я нашёл файл const.py, в нём есть массив DELIVERY_TYPES, в котором присутствует информация, которая выводится в шаблоне ()
Редактирую файл, загружаю – и на сайте всё так же старая инфа.
Компилирую const.pyc и обновляю оба – старая инфа.
Я удаляю этот файл с сервера (const.py и const.pyc) – старая инфа.
Редактирую шаблон (.html) – изменения видны.

Что я делаю не так? Как сделать чтобы изменения с const.py “применились”?
botinag
вам надо найти представление, которое отвечает за генерацию этой страницы и посмотреть как туда контекст передается. И вот уже в контекст и вносить изменения.
Cruzka
botinag
вам надо найти представление, которое отвечает за генерацию этой страницы и посмотреть как туда контекст передается. И вот уже в контекст и вносить изменения.
спасибо.

нашёл, во views.py:
context['delivery_types'] = DELIVERY_TYPES
а DELIVERY_TYPES объявлено в const.py
ещё нашёл в forms.py
from order.const import ADD_TOY_PRICE, DELIVERY_TYPES,
Но когда я вношу изменения в DELIVERY_TYPES в const.py, на сайте это никак не отражается.

Я правда до этого не работал с питоном вообще и Джанго в частности. Может там кэш кода какой-то (.pyc я перекомпилировал, не помогло), или что-то такое нужно делать после изменений?
botinag
а во views.py точно из const.py импортитруется DELIVERY_TYPES?
После изменений сервер перезагружали?
Cruzka
botinag
а во views.py точно из const.py импортитруется DELIVERY_TYPES?После изменений сервер перезагружали?
Вроде как больше неоткуда.

А нужно? И что именно перезапускать?
botinag
Cruzka
А нужно? И что именно перезапускать?
нужно перезапустить веб-сервер (апач или что вы там используете), чтобы изменения вступили в силу.
Cruzka
Вроде как больше неоткуда.
посмотрите в файле views.py конструкции типа from <Пакет> import DELIVERY_TYPES и уже в нужном пакете редактируйте DELIVERY_TYPES.
Cruzka
botinag
нужно перезапустить веб-сервер (апач или что вы там используете), чтобы изменения вступили в силу.
я думаю, дело в этом. как-то жесть (в сравнении с пхп) – рестарт апача для каждого изменения. Можете посоветовать, как упростить отладку в таком случае?

связи в проекте:

const.py -> DELIVERY_TYPES

forms.py -> from order.const import DELIVERY_TYPES -> class OrderForm

views.py -> from order.forms import OrderForm
botinag
Cruzka
Можете посоветовать, как упростить отладку в таком случае?
используйте встроенный сервер для разработки.
python manage.py runserver
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