Me gustaría llamar al equivalente de manage.py loaddata
desde una vista de Django. Me gustaría poder especificar dónde cargar los datos y en qué aplicación cargarlos.Programando mediante la carga de Django
¿Alguna idea?
Me gustaría llamar al equivalente de manage.py loaddata
desde una vista de Django. Me gustaría poder especificar dónde cargar los datos y en qué aplicación cargarlos.Programando mediante la carga de Django
¿Alguna idea?
Cada django-admin.py
(manage.py
) de comandos, como se ve en la documentation, se puede llamar desde su código con:
from django.core.management import call_command
call_command('loaddata', 'myapp')
Dónde primer parámetro es el nombre del comando, todos los otros parametros de posición son los mismos que la línea de comandos los parámetros de posición y todos los parámetros de palabras clave son opciones.
También puede agregar la opción "verbosity = 0" para la salida de la consola de supresión: call_command ('loaddata', 'fixture_name.json', verbosity = 0) –
Documentos aquí: https://docs.djangoproject.com/en/ 1.8/ref/django-admin/# running-management-commands-from-your-code – Renato
Tenga en cuenta que ** no es adecuado utilizar el comando 'loaddata' directamente en una migración de datos **, ya que internamente carga la mayor cantidad las definiciones de modelo actualizadas y las utiliza para deserializar datos históricos en un dispositivo. Ese es un comportamiento incorrecto. Solución aquí: http://stackoverflow.com/a/39743581/2293304 – Rockallite