Получить объект модели django базы данных был запрошен из

У меня есть приложение, которое использует несколько баз данных. Когда объект экземпляра модели находится в памяти, как я могу определить, из какой базы данных он был получен? В частности, я хотел бы знать это для использования в методе класса модели.

Пример:

class book(Models.model):
    newdate = models.DateField(default=date.today())
    type = models.CharField(
                            max_length=30,
                            choices=BOOK_TYPE,
                            default = 'novel',
                            )
    def get_current_student(self):
        if not hasattr(self,'_current_student'):
            try:
                self._current_student = clickerlog.objects.using(SELF.ORIGIN_DATABASE).get(book=self.pk,end__isnull = True).student
            except:
                self._current_student = none
        return self._current_student

class booklog(Models.model):
    start = models.DateTimeField(
                                 default=datetime.now(),
                                 verbose_name = 'start time'
                                 )
    end = models.DateTimeField(null=True,blank=True,)
    book = models.ForeignKey(book)
    student = models.ForeignKey(student,
                              limit_choices_to = {'isactive':True})
7
задан AgDude 29 April 2012 в 18:59
поделиться