python - queryset - orm django queries
Utilice Django ORM como independiente (1)
Ah ok, lo descubrí y publicaré las soluciones para cualquiera que intente hacer lo mismo.
Esta solución asume que desea crear nuevos modelos.
Primero crea una nueva carpeta para almacenar tus archivos. Lo llamaremos "standAlone". Dentro de "standAlone", crea los siguientes archivos:
__init__.py
myScript.py
settings.py
Obviamente, "myScript.py" puede denominarse lo que sea.
A continuación, crea un directorio para tus modelos.
Nombraremos nuestro directorio de modelos "myApp", pero nos daremos cuenta de que esta es una aplicación Django normal dentro de un proyecto, por lo tanto, asígnele un nombre apropiado a la colección de modelos que está escribiendo.
Dentro de este directorio crea 2 archivos:
__init__.py
models.py
Necesitará una copia de manage.py de un proyecto existente de Django o puede obtener una copia de la ruta de instalación de Django:
django/conf/project_template/manage.py
Copie el manage.py en su directorio / standAlone. Bien, ahora deberías tener la siguiente estructura:
/standAlone
__init__.py
myScript.py
manage.py
settings.py
/myApp
__init__.py
models.py
Agregue lo siguiente a su archivo myScript.py:
# settings.py
from django.conf import settings
settings.configure(
DATABASE_ENGINE = "postgresql_psycopg2",
DATABASE_NAME = "myDatabase",
DATABASE_USER = "myUsername",
DATABASE_PASSWORD = "myPassword",
DATABASE_HOST = "localhost",
DATABASE_PORT = "5432",
INSTALLED_APPS = ("myApp")
)
from django.db import models
from myApp.models import *
y agregue esto a su archivo settings.py:
DATABASE_ENGINE = "postgresql_psycopg2"
DATABASE_NAME = "myDatabase"
DATABASE_USER = "myUsername"
DATABASE_PASSWORD = "myPassword"
DATABASE_HOST = "localhost"
DATABASE_PORT = "5432",
INSTALLED_APPS = ("myApp")
y finalmente tu myApp / models.py:
# myApp/models.py
from django.db import models
class MyModel(models.Model):
field = models.CharField(max_length=255)
y eso es. Ahora para que Django administre su base de datos, en el símbolo del sistema navegue a nuestro directorio / independiente y ejecute:
manage.py sql MyApp
Posibles duplicados:
Use solo algunas partes de Django?
Usando solo la parte DB de Django
Quiero usar el ORM de Django como independiente. A pesar de una hora de búsqueda en Google, aún me quedan varias preguntas:
- ¿Me requiere configurar mi proyecto de Python con un archivo de settings.py, / myApp / y de modules.py?
- ¿Puedo crear un nuevo
models.py
y ejecutarsyncdb
para que configure automáticamente las tablas y las relaciones o solo puedo usar modelos de proyectos existentes de Django? - Parece que hay muchas preguntas con respecto a
PYTHONPATH
. Si no está llamando a modelos existentes, ¿es esto necesario?
Supongo que lo más fácil sería que alguien simplemente publicara una plantilla básica o un tutorial del proceso, aclarando la organización de los archivos, por ejemplo:
db/
__init__.py
settings.py
myScript.py
orm/
__init__.py
models.py
Y los elementos básicos:
# settings.py
from django.conf import settings
settings.configure(
DATABASE_ENGINE = "postgresql_psycopg2",
DATABASE_HOST = "localhost",
DATABASE_NAME = "dbName",
DATABASE_USER = "user",
DATABASE_PASSWORD = "pass",
DATABASE_PORT = "5432"
)
# orm/models.py
# ...
# myScript.py
# import models..
Y si necesita ejecutar algo como: django-admin.py inspectdb
...
(Oh, estoy ejecutando Windows si eso cambia cualquier cosa con respecto a los argumentos de línea de comandos).