i was trying to "makemigrations" for my project but whenever i do this, i got this error
django.db.utils.ProgrammingError: (1146, "Table 'trustline.authentication_user' doesn't exist" and i have this line in settings.py
AUTH_USER_MODEL = "authentication.User"
here's the full error

CodePudding user response:
Your error stems from attempting to use the database at import time. In Django, it's a big no-no to use the database on module level in a module that may be imported during your application's initialization time, since the application needs to be initialized so you can make or run migrations, and if such a database call requires a table that hasn't yet been migrated into existence... well, here we are.
Looking at the traceback, that happens in utility/email_sending.py, line 27, an invocation of get_admin_emails().
For this particular problem, the fix should be to
- remove
ADMIN_EMAILS = get_admin_emails()(and instead just callget_admin_emails()wherever you might be usingADMIN_EMAILSright now). - and if you want the same performance you had before, slap an
@lru_cacheor@cachedecorator onget_admin_emails()so it ever does its work once.
