Мое приложение в настоящее время работает с двумя разными базами данных: по умолчанию доступно только для чтения, а гисто - то, на котором я пишу.
Я изменил файл admin.py, чтобы изменить базу данных по умолчанию:
class MultiDBModelAdmin(admin.ModelAdmin):
using='histo'
def save_model(self, request, obj, form, change):
# Tell Django to save objects to the 'histo' database.
obj.save(using=self.using)
def delete_model(self, request, obj):
# Tell Django to delete objects from the 'histo' database
obj.delete(using=self.using)
def get_queryset(self, request):
# Tell Django to look for objects on the 'histo' database.
return super().get_queryset(request).using(self.using)
def formfield_for_foreignkey(self, db_field, request, **kwargs):
# Tell Django to populate ForeignKey widgets using a query
# on the 'histo' database.
return super().formfield_for_foreignkey(db_field, request, using=self.using, **kwargs)
def formfield_for_manytomany(self, db_field, request, **kwargs):
# Tell Django to populate ManyToMany widgets using a query
# on the 'histo' database.
return super().formfield_for_manytomany(db_field, request, using=self.using, **kwargs)
Когда я запускаю manage.py createuperuser, я получаю сообщение об ошибке:
django.db.utils.ProgrammingError: relation "auth_user" does not exist
Я пробовал manage.py migrate --database = histo auth, но я все еще получаю эту ошибку.
Я думаю, что это связано с тем, что база данных по умолчанию доступна только для чтения.
Можете ли вы помочь мне в этом?
Спасибо