1
我想在Django中組合一個對象和一個QuerySet。Django:組合一個對象和一個QuerySet?
我的目標如下:
class Book(models.Model):
title = models.CharField(max_length=400)
library_id = models.FloatField(max_length=200, null=True, blank=True, unique=True)
copy_id = models.FloatField(max_length=200, null=True, blank=True)
我的查詢如下(我找了一本書的ID,然後發現是複製所有的書籍,即與此library_id
共享copy_id
書:
primary_book = Book.objects.get(id=book_id)
book_copies = Book.objects.filter(copy_id=primary_book.library_id)
if book_copies:
books = primary_book | book_copies
else:
books = primary_book
也許有更好的方法來運行查詢,但此刻我有點卡住,因爲這是生產TypeError: unsupported operand type(s) for |: 'Book' and 'QuerySet'
謝謝。
的是,在第二個例子中,你首先需要獲取primary_book - 這裏,所以沒有收穫可言。如果你想確切地說,代碼應該是:books = [primary_book] + list(book_copies)[order有時確實很重要] :) – Jerzyk 2011-03-21 22:47:15
以前沒有碰到過'[listify]',謝謝。 – AP257 2011-03-22 08:47:24