В последнее время я все больше знакомлюсь с Джанго. У меня есть новый проект, над которым я работаю, который будет использовать Python для настольного приложения. Можно ли использовать Django ORM в настольном приложении? Или я должен просто пойти с чем-то вроде SQLAlchemy ?
Люди Джанго - разумные люди с философией разделения вещей. Так что да, теоретически вы должны быть в состоянии использовать ORM от Django в автономном приложении.
Вот одно руководство, которое я нашел: Django ORM как отдельный компонент .
Я бы предложил использовать SQLAlchemy и декларативный слой поверх него, такой как Elixir , если вы предпочитаете Django-подобный синтаксис.
Да, это так. Commonsense Computing Project в медиа-лаборатории MIT делает это для ConceptNet, семантическая сеть. Вы можете получить источник здесь: http://pypi.python.org/pypi/ConceptNet/4.0b3
ORM peewee имеет декларативный синтаксис, который должен быть знаком пользователям django и может использоваться как отдельный. Вот проект Документы
Это возможно и задокументировано в документации здесь :
Вам нужно настроить 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
Camelot выглядит многообещающе, если вы хотите создавать настольные приложения Python, используя БД. Он использует SQLAlchemy, хотя. Еще не пробовал.
Я бы предложил другой ORM для настольного приложения, например, SQLAlchemy или SQLObject. Можно использовать django ORM, но я думаю, что другие ORM лучше, если вы собираетесь использовать их автономно.