12
votes

Django Orm pour application de bureau

Récemment, je suis devenu de plus en plus familier avec Django. J'ai un nouveau projet que je travaille sur cela utilisera Python pour une application de bureau. Est-il possible d'utiliser le Django Orm dans une application de bureau? Ou devrais-je juste aller avec quelque chose comme SQLALCHEMY ?


7 Réponses :



12
votes

Les gens de Django sont des personnes sensibles avec une philosophie de découplage des choses. Donc, oui, en théorie, vous devriez être parfaitement capable d'utiliser l'ormes de Django dans une application autonome.

Voici un guide que j'ai trouvé: Django Orm comme composant autonome .


1 commentaires

Ce lien n'est pas spécifique au bureau, il peut donc y avoir quelques tâches supplémentaires. (J'ai essayé de le faire courir cette semaine et a couru dans quelques chicots.) Juste une tête pour tout le monde.



4
votes

Je suggérerais d'utiliser SQLalchemy et une couche déclarative, telle que Elixir si vous préférez une syntaxe de type django.


1 commentaires

Sqlalchemy expose également un peu plus de la conception SQL, ce qui en fait un peu plus facile d'utiliser des outils de reporting tiers.



0
votes

Je suggérerais un autre orj pour une application de bureau peut-être SQLALCHEMY ou SQLOBJECT. J'avais possible d'utiliser le Django orm mais je pense que d'autres ormes sont meilleurs si vous allez les utiliser autonome.


0 commentaires

0
votes

camelot semble prometteur si vous souhaitez faire des applications de bureau Python à l'aide d'une DB. Il utilise cependant Sqlalchemy. Je ne l'ai pas encore essayé.


0 commentaires

1
votes

Le PEEEWEE ORM a une syntaxe déclarative qui devrait être familière pour les utilisateurs de Django et peut être utilisé comme étant autonome. Voici le projet docs


0 commentaires

0
votes

Ceci est possible et est documenté dans les docs ici :

Vous devez configurer Django comme ci-dessous: P>

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


0 commentaires