Пусть говорят, у меня есть этот код:Лучший способ цикла/изменить некоторые объекты в object_list
# Get 30 threads
threads = Thread.objects.all()[:30]
threads_id = [o.pk for o in threads]
# Extra info about threads that the user have visited
visited_threads = VisitedThread.objects.filter(pk__in=threads_id, user=request.user)
# I want to loop the visited_threads and add info to thread in threads with new info
for visited_thread in visited_threads:
# Here I want to add things to thread (visited_thread.thread), something like:
# thread.has_unread_post = thread.post_count > visited_thread.post_count
Как я могу добавить информацию в теме в списке нитей, как что-то в этом примере кода? Я не хочу обновлять базу данных, просто манипулирую данными, прежде чем показывать ее пользователю.
Да, но как я могу добавить атрибут нить в потоках? Скажем, я посетил_thread с visit_thread.thread.id = 12. Как добавить атрибуты thread.id = 12 в потоки? – Spindel
Я бы построил словарь PK для потоковых экземпляров из набора запросов к потокам, затем вы можете искать экземпляры в потоке памяти в своем цикле для добавления атрибута. –
Не могли бы вы привести пример кода? – Spindel