Я пытаюсь сохранить мой сайт RESTful DRY, и я не могу придумать, как отличить код от динамического выбора из каждой отдельной «пользовательской» базы данных. У нас есть отдельная база данных для каждого клиента. Это входит как часть URL-адреса и передается в каждое представление как ключевое слово arg. Я хочу, чтобы дать каждому посмотреть поведение доступа к соответствующей базе данных, не должны убедиться, что каждый программист писать вид помнит использоватьДинамически выбирайте базу данных по запросу
Thing.objects.using(user).all()
и
t = Thing()
t.save(using=user)
каждый раз. Похоже, что там должен быть какой-то способ, чтобы перехватить запрос и установить базу данных по умолчанию, основываясь на аргументах в представлении перед тем она попадает вид, что позволяет нам использовать обычный
Thing.objects.all()
Это также будет преимущество факторизации всего кода разрешения пользователя в более подходящем месте.
Это было мое предложение. –