Уведомление Django о дате получения доступа к ссылке - PullRequest
0 голосов
/ 12 июня 2010

Я создаю систему уведомлений, чтобы пользователь в виртуальном сообществе был объявлен, когда кто-то отправляет ему сообщение или начинает следовать за ним (последующее отношение похоже на отношение друга, но оно не обязательно является взаимным)

функция просмотра:

def notification_view(request, last_checked):
    u = Relation.objects.filter(date_follow>Notification.objects.get(last_checked=last_checked)) 
    v = Message.objects.filter(date>Notification.objects.get(last_checked=last_checked)) 
    x = NotificationSettings.filter(user = request.user)
    notice_settings = Notification.objects.get(notice_type = x) 

    return render_to_response('notification/notification.html', {
        'u': u,
        'v':v,
        'x':x,
        'notice_settings':notice_settings,  

        }, 
        context_instance=RequestContext(request)) 

models.py:

class NoticeType(models.Model):
    follow = models.ForeignKey(Relations, editable = False)     
    message = models.ForeignKey(Messages)
    classroom_invitation = models.ForeignKey(Classroom)

class Notification(models.Model):

    receiver = models.ForeignKey(User, editable=False)
    date = models.DateTimeField(auto_now=True, editable = False)
    notice_type = models.ForeignKey(NoticeType, editable = False, related_name = "notification_type") 
    sent = models.BooleanField(default = True)
    last_checked = models.DateTimeField(auto_now=True, editable = False)



class NotificationSettings(models.Model):
     user = models.ForeignKey(User)
     receive_notifications = models.BooleanField(default = True)
     only_follow = models.BooleanField(default = False)
     only_message = models.BooleanField(default = False)
     only_classroom = models.BooleanField(default = False)
     #receive_on_email = models.BooleanField(default = False)

Моя проблема:

Я хочу, чтобы last_checked был временем, когда кто-то принимает ссылку (ссылку для уведомления). Как я могу сэкономить это время? как я могу получить это?

спасибо заранее!

1 Ответ

1 голос
/ 12 июня 2010
from datetime import datetime

notification.last_checked = datetime.now()
notification.save()

поместите это в представление вашей ссылки и убедитесь, что уведомление содержит ваш объект Уведомления!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...