database - template - Cómo volcar completamente los datos para Django-CMS
install django cms ubuntu (4)
Tengo una instancia de Django-CMS que ya se está ejecutando en un entorno de producción. Me gustaría volcar todos los datos relacionados con el CMS (PAGES y PLUGINS) para poder volver a cargarlos en mi entorno de desarrollo.
Cuando hago python manage.py dumpdata cms
se vuelca la mayoría de los datos, pero no todos. Ninguno de los contenidos de los complementos es volcado. Cuando miro la fuente de django-cms, veo que los complementos están organizados en una carpeta diferente a la del resto de modelos. Estoy seguro de que esto tiene algo que ver con el comportamiento de dumpdata
.
¿Alguien sabe cómo lograría lo que estoy tratando de hacer?
Gracias por tu ayuda / respuestas!
Aquí hay una actualización del procedimiento que utilizo:
./manage.py dumpdata >fixtures/all.json
psql
DROP DATABASE [DBNAME];
createdb -T template_postgis [DBNAME]
./manage.py syncdb
psql [DBNAME]
delete from auth_group_permissions; delete from auth_permission; delete from django_admin_log; delete from django_content_type;
Si no borras las tablas de arriba, obtendrás este error al cargar los accesorios:
IntegrityError: duplicate key value violates unique constraint django_content_type_app_label_key
Y entonces:
./manage.py loaddata fixtures/all.json
Filipina
Los comandos integrados de volcado y restauración de Django funcionan bien para migrar los contenidos del CMS.
Para volcar el contenido del CMS, debe incluir tanto la aplicación cms como cada uno de los tipos de complementos que está utilizando en el comando dumpdata, por lo que algo como:
manage.py dumpdata cms text picture link file [other plugin types] > cms_export.json
para volcar su contenido (solo necesita el nombre de la aplicación, no la ruta completa, como cms.plugins.text
).
Para DjangoCMS 3.0, la sintaxis es la misma, pero los nombres de los complementos han cambiado. Para obtener todos los complementos estándar:
./manage.py dumpdata cms djangocms_column djangocms_file djangocms_flash djangocms_googlemap djangocms_inherit djangocms_link djangocms_picture djangocms_style djangocms_teaser djangocms_text_ckeditor djangocms_video > cms_export.json
Su comando dumpdata
solo descarga los datos de la aplicación cms
, pero cada complemento ( cms.plugins.text
, cms.plugins.picture
, etc.) es su propia aplicación, por lo que debe agregarse a la línea de comandos.