Я не уверен, как это правильно описать. Но мои модели выглядят так:Django: обновление отношений «один ко многим»
class Post(models.Model):
title = models.CharField(max_length=250)
body = models.TextField()
published = models.DateTimeField(null=True, blank=True)
updated = models.DateTimeField(null=True, blank=True)
user = models.ForeignKey(User)
class Unread(models.Model):
user = models.ForeignKey(User)
post = models.ForeignKey(Post)
Моя проблема в том, что я пытаюсь ОБНОВЛЯТЬ непрочитанную модель. Допустим, в моем " список пользователей" У меня есть идентификаторы пользователя: [1,3,5]
Моя непрочитанная модель имеет:
ID USER POST
1 1 1 # will row will remain because userid 1 is found in "userlist"
2 2 1 # --- this row would be deleted because USER is not found in "userlist"
3 3 1 # will also remain because userid 3 is found in "userlist"
4 5 1 # NEW RECORD added because 5 was in "userlist" but not in Unread
Примечание: идентификатор автоинкремент.
Есть ли у «Django» «автоматический» способ сделать это? Или что такое «рекомендуемый» способ обработки этих типов сценариев?
Я столкнулся с этой проблемой несколько раз раньше, и я помню, что «самый ленивый» способ, которым я занимался, состоял в том, чтобы УДАЛИТЬ все в Непрочитанной модели, а затем ДОБАВИТЬ все из «списка пользователей».
С наилучшими пожеланиями, W