В последнее время я все больше и больше знаком с Django. У меня есть новый проект, над которым я работаю, который будет использовать Python для настольного приложения. Можно ли использовать Django ORM в настольном приложении? Или я должен просто пойти с чем-то вроде SQLAlchemy?
Django ORM для настольных приложений
Ответ 1
Люди из Django - это разумные люди с философией развязывания вещей. Итак, теоретически вы должны отлично использовать Django ORM в автономном приложении.
Вот одно руководство, которое я нашел: Django ORM как отдельный компонент.
Ответ 2
Я бы предложил использовать SQLAlchemy и декларативный слой поверх него, например Elixir, если вы предпочитают синтаксис, подобный Django.
Ответ 3
Да, это так. Проект Componsense Computing в медиа-лаборатории MIT делает это для ConceptNet, семантическая сеть. Вы можете получить источник здесь: http://pypi.python.org/pypi/ConceptNet/4.0b3
Ответ 4
ORI peewee имеет декларативный синтаксис, который должен быть знаком пользователям django и может использоваться как автономный. Вот проект docs
Ответ 5
Я бы предложил другой ORM для настольного приложения, возможно, SQLAlchemy или SQLObject. Я могу использовать django ORM, но я думаю, что другие ORM являются лучшими, если вы собираетесь использовать их автономно.
Ответ 6
Camelot кажется многообещающим, если вы хотите использовать настольные приложения Python с помощью БД. Однако он использует SQLAlchemy. Еще не пробовал.
Ответ 7
Это возможно и задокументировано в документации здесь:
Вам нужно настроить Django, как показано ниже:
import django
from django.conf import settings
from myapp import myapp_defaults
settings.configure(default_settings=myapp_defaults, DEBUG=True)
django.setup()
# Now this script or any imported module can use any part of Django it needs.
from myapp import models