Django ORM для настольных приложений

В последнее время я все больше и больше знаком с Django. У меня есть новый проект, над которым я работаю, который будет использовать Python для настольного приложения. Можно ли использовать Django ORM в настольном приложении? Или я должен просто пойти с чем-то вроде SQLAlchemy?

Ответ 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