Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problemas con load_metadata y loaddata #75

Open
GonzaPromo14 opened this issue Apr 19, 2021 · 4 comments
Open

Problemas con load_metadata y loaddata #75

GonzaPromo14 opened this issue Apr 19, 2021 · 4 comments
Labels

Comments

@GonzaPromo14
Copy link

Hola! Actualicé el módulo django-afip a la nueva versión. Lo que implicó cambiar el método populate_all() por load_metadata(). El problema es que en este método no me toma la base de datos correspondiente a AFIP (porque mi sistema utiliza múltiples bases de datos). Por lo que vi, el método load_metadata() llama al comando "loaddata". El tema es que el comando loaddata pide un argumento "--database" y en el caso en que no le mando ese argumento, toma la base de datos por default. Eso hace que se me rompa el sistema. Yo hice un routers.py que redirecciona la base de datos cada vez que se trabaja con los models de afip. El tema, es que el comando loaddata no lo hace porque le asigna la base de datos por defecto, y me tira problemas con el transaction.atomic(using=bd). El problema es que en el método load_metadata() no me permite enviarle la base de datos para que la utilice el método "loaddata".

Gracias

@WhyNotHugo
Copy link
Owner

WhyNotHugo commented Apr 19, 2021

Hmm, una vez más no tuve en cuenta sistemas multi-db. 🤔

De momento te recomiendo correr el equivalente a mano:

MY_DB=XXX
django-admin loaddata --database $MY_DB --app afip receipttype
django-admin loaddata --database $MY_DB --app afip concepttype
django-admin loaddata --database $MY_DB --app afip documenttype
django-admin loaddata --database $MY_DB --app afip vattype
django-admin loaddata --database $MY_DB --app afip taxtype
django-admin loaddata --database $MY_DB --app afip currencytype

Mientras voy a ir pensando la mejor solución para esto. Capaz lo correcto sea poner todo en un sólo fixture para hacerlo más fácil de importar a mano así.

@GonzaPromo14
Copy link
Author

Ah bueno. Muchas gracias por la solución parcial! Me solucionaste un dolor de cabeza jaja

@WhyNotHugo
Copy link
Owner

Sigo pensando en como resolver esto de la mejor manera.

Si incluyese todos estos modelos en un migración, te sería problmático?

@GonzaPromo14
Copy link
Author

GonzaPromo14 commented May 27, 2021

No sé si sería problemático che, pero te consulto. Por qué no se podría agregar en el método load_metadata() un atributo que sea db, que en el caso que no se pase use la default por defecto?

@WhyNotHugo WhyNotHugo added the bug label Jul 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants