Как определить, что Pyramid/python загружает правильный.egg?

Это странный вопрос, но он сводит меня с ума последние 3 часа. Я хотел поиграть с Cms Kotti на основе пирамиды, и я ошибся, установив его сначала с помощью easy_install (sudo easy_install kotti). У меня странное поведение, и я не уверен, так ли это сама программа или как я ее установил.

Я хочу изменить некоторые части кода и посмотреть, как он работает, но мои изменения не вступают в силу. После того, как я установил его с помощью easy_install, я сделал:

virtualenv mysite --no-site-packages
bin/easy_install pyramid
git clone https://github.com/Pylons/Kotti.git
cd Kotti
sudo ../bin/python setup.py develop
../bin/pserve app.ini --reload

Я пошел к 127.0.0.0:5000 и увидел, что он работает. На первой странице есть текст "Поздравляем! Вы успешно установили Kotti". поэтому я пошел в каталог котти и сделал grep "Congratulations" *.* и обнаружил, что это происходит из populate.py. Поэтому я открыл файл, изменил строку на другой фрагмент текста и сохранил. Поскольку у меня есть флаг --reload на pserve, я заметил, что он перезагружает мой код на терминале, и когда я вернулся на сайт, данные не изменились.

Я так растерялся, потому что сервер перезагружается, когда я изменяю код Python, поэтому он видит изменение, но оно не отражается в браузере (просто чтобы проверить, является ли он кэшем браузера, я попробовал его с помощью других браузеров и очистил кэш).

Есть идеи?

2 ответа

Решение

Бег python -v покажет весь импорт

Когда вы впервые запускаете веб-приложение Kotti, как и в большинстве систем CMS, оно запускает набор методов заполнения данных (включая упомянутый вами код populate.py) для настройки базы данных и вставки всего содержимого, которое вы видите. Параметр --reload указывает серверу развертывания только следить за изменениями файлов во время работы в файловой системе.

Если вы хотите повторно запустить код установки / заполнения, то вам нужно удалить созданную базу данных. Если вы не внесли никаких изменений в их пример файла app.ini, скорее всего, это будет Kotti.db.

В качестве альтернативы используйте CMS для внесения изменений, как это предусмотрено системами CMS.

Другие вопросы по тегам