我有一個模型Django的處理多個ID
class Notification(models.Model):
user = models.ForeignKey(User)
title = models.CharField(max_length=150)
body = models.ForeignKey(Question)
viewed = models.BooleanField(default=False)
def __unicode__(self):
return self.title
這裏我要實現的就是讓那些尚未查看的當用戶查看該通知應設置爲觀看=真通知。
我的通知與信息和問題標題完美配合。當用戶點擊通知時,它會轉到問題的詳細視圖。
在這裏,我想讓通知設置爲當用戶轉到問題的詳細視圖時查看。
我的模板文件是
{% for notification in notifications %}
<p><a href="{% url "question-detail" notification.body.id %}">{{notification.title}} </a></p>
{{notification.body}}
{% endfor %}
查看我的問題細節的看法是:
class QuestionDetailView(DetailView):
context = {}
model = Question
template_name = "question-detail.html"
def get(self, request, pk, **kwargs):
self.pk = pk
return super(QuestionDetailView, self).get(request, pk, **kwargs)
def get_context_data(self, **kwargs):
context = super(QuestionDetailView,self).get_context_data(**kwargs)
context['question'] = Question.objects.get(pk=self.pk)
return context
其網址爲:
url(r'^question/(?P<pk>\d+)',QuestionDetailView.as_view(), name="question-detail"),
在這裏,我想設置的通知被視爲=真。我怎樣才能得到通知的ID。在URL中,我已經得到了問題的ID。
這沒有奏效。這樣做會將所有通知設置爲與特定問題相關的已被視爲= True。單個問題可能有多個通知。這樣做,它會將所有通知設置爲已閱讀= True,而我希望特定通知爲True。 – gamer 2014-10-30 13:10:29
@Aeronn是的,這將設置**全部**通知,與當前問題相關,如同查看。您如何識別*特定*通知,即什麼通知*特別*什麼不是? – stalk 2014-10-30 13:18:24
@Aeronn檢查更新的問題 – stalk 2014-10-30 19:04:30