У меня есть достаточно сложный пользовательский метод модели Django. Это видно в интерфейсе администратора, и теперь я хотел бы сделать его сортируемым в интерфейсе администратора.
Я добавил admin_order_field
, как рекомендовано в этом предыдущем вопросе , но я не до конца понимаю, что еще мне нужно сделать.
class Book(models.Model):
id = models.IntegerField(primary_key=True)
title = models.CharField(max_length=200)
library_id = models.CharField(max_length=200, unique=True)
def current_owner(self):
latest_transaction = Transaction.objects.filter(book=self)[:1]
if latest_transaction:
if latest_transaction[0].transaction_type==0:
return latest_transaction[0].user.windows_id
return None
current_owner.admin_order_field = 'current_owner'
В настоящее время, когда я нажимаю на поле current_owner в интерфейсе администратора, Django дает мне
FieldError at /admin/books/book/
Cannot resolve keyword 'current_owner' into field
Мне тоже нужно сделать BookManager? Если это так, какой код я должен использовать? Это не простой подсчет, как в примере из предыдущего вопроса, поэтому помощь будет принята:)
Спасибо!