Использовать только некоторые части Django?

37
задан Peter Mortensen 14 April 2010 в 22:26
поделиться

4 ответа

Я сам использую Django для его объекта/дб, отображающегося, не используя его urlconfigs. Просто создайте файл, названный djangosettings.py, и вставьте необходимую конфигурацию, например:

DATABASE_ENGINE   = 'oracle'
DATABASE_HOST     = 'localhost'
DATABASE_NAME     = 'ORCL'
DATABASE_USER     = 'scott' 
DATABASE_PASSWORD = 'tiger'

Тогда в Вашем регулярном коде Python, сделайте

import os
os.environ["DJANGO_SETTINGS_MODULE"] = "djangosettings"

перед импортом любых модулей Django. Это позволит Вам использовать отображения объекта/дб Django, на самом деле не имея проекта Django, таким образом, можно будет использовать его для автономных сценариев или других веб-приложений или независимо от того, что Вы хотите.

Что касается кэширования, если Вы не хотите использовать Django тогда, необходимо, вероятно, решить то, что Вы используете и идете оттуда. Я рекомендую использовать CherryPy, который не использует отображение URL регулярного выражения Django-стиля, но вместо этого автоматически отображает URL на функции на основе имен функций. Существует пример прямо наверху домашней страницы CherryPy: http://cherrypy.org/

CherryPy имеет свою собственную систему кэширования, таким образом, можно выполнить точно то же самое как, что Django делает, но не будучи должен использовать urlconfig систему Django.

43
ответ дан Eli Courtwright 27 November 2019 в 04:35
поделиться

Django, будучи веб-платформой, чрезвычайно эффективен при создании веб-сайтов. Однако это является также одинаково подходящим к занятию проблемами от сети. Это слабая связь , которым проект гордится себя. Ничто не мешает Вам установить полную версию Django, и просто использовать то, в чем Вы нуждаетесь. Как правило, очень немного компонентов Django делают широкие предположения о своем использовании.

Конкретно:

Одно из главного Вы столкнетесь, когда попытка использовать Django без веб-сервера настраивает среду правильно. ORM и система кэша все еще должны быть настроены в settings.py. Существуют документы о использование django без модуля настроек , что можно найти полезным.

12
ответ дан user21799 27 November 2019 в 04:35
поделиться

Я склонен предпочитать подход смешивания и подгонки к использованию Python для веб-программирования.:-)

у меня нет большого опыта с Django, но я рекомендовал бы дать sqlalchemy взгляд для материала базы данных. Это работает хорошо с другими и дает Вам несколько потенциальных слоев абстракции (таким образом, можно пойти с чем-то основным или настроить ад из него, если Вы хотите). Плюс, Вы уже будете несколько знакомы с ним, если Вы когда-либо использовали hibernate/nhibernate.

Моя любимая часть - то, что это имеет много опций для баз данных для соединения с (прежде всего SQL Server, который django не имеет созданным в прошлый раз, когда я проверил).

После этих слов мне говорят, что с Django, довольно легко разъединить функциональность (но никогда не делавшийся так самому).

2
ответ дан Jason Baker 27 November 2019 в 04:35
поделиться

Существуют, конечно, другие проекты там, которые конкретно реализуют единственные части django. TurboGears, например, является набором нескольких проектов, которые могут работать собой и вместе сформировать полную платформу веб-разработки.

Для абстракции дб SQLAlchemy приходит на ум.

Относительно кэширующейся части: я не знаю ни о каком автономном проекте, который реализует универсальное средство кэширования.

, С другой стороны, должно быть довольно легко реализовать Ваше собственное кэширование, например, при помощи соленые огурцы . Взгляните на этот рецепт для декоратора для идей и Google для "memoize".

Также имеют в виду, что Ваша база данных имеет свой собственный механизм кэширования, поэтому возможно, Вы не должны даже интересоваться деталями.

2
ответ дан 27 November 2019 в 04:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: