повторно используемое приложение для объявлений на сайте django, которое отображает сообщение только один раз для пользователя - PullRequest
0 голосов
/ 02 декабря 2009

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

Я задавался вопросом, знает ли кто-нибудь приложение, которое я мог бы использовать здесь, не изобретая колесо.

Ответы [ 2 ]

3 голосов
/ 02 декабря 2009

Взгляните на django-уведомление . Он используется Pinax, там, кажется, работает так, как вы ищете. По крайней мере, это сохраняет статус в БД.

редактировать

Ответ на комментарий

из документов :

notification.send([to_user], "friends_invite", {"from_user": from_user})

так что это должно работать:

notification.send(Users.objects.all(), "friends_invite", {"from_user": from_user})

и если набор запросов неверен:

notification.send([u for u in Users.objects.all()], "friends_invite", {"from_user": from_user})
0 голосов
/ 25 июля 2011

Вы смотрели на Messages Framework в Django 1.3? В Django <= 1.2 это была простая модель, поэтому вы могли сделать: </p>

for user in User.objects.all():
    user.message_set.create(message="some text")

и это будет отображаться в шаблоне и удаляться при загрузке следующей страницы (это то, что использует администратор Django). В 1.3 он немного изменился, но это может быть удобно, но не «отклоняемым» так, как вам хотелось бы.

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