Estoy trabajando con django 1.6.5 y python 2.7. Tengo la función de importación en mi aplicación y aparece el error:
OSError: [Errno 18] Invalid cross-device linkTengo un problema con esta parte del código:
os.rename(db_temp, settings.DATABASES['bookmat']['NAME'])código en la configuración:
'bookmat': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': '/my_projects/book/db/bookmat.sqlite3', },os.rename solo funciona si el origen y el destino están en el mismo sistema de archivos. Deberías usar shutil.move en su lugar.
Creo que cambiar el nombre solo funciona cuando los nombres de origen y destino están en el mismo sistema de archivos. Probablemente tengas diferentes monturas. De lo contrario, obtienes ese error. Puede implementar el mismo efecto con una copia y una eliminación.
Espero eso ayude