2009-12-10 16 views
2

我正在使用django-notification來允許我的用戶選擇停用在我的Web應用程序中生成的某些警報。將django通知設置爲可選,而不是默認選擇退出

默認情況下,當我創建啓用它,而不是禁用在用戶通知接口一個新的通知類型(選中)

我想做出一些提醒選入,而不是退出的默認。我瀏覽過文檔,並且無法看到這樣做的方法,是否有其他人設法完成此操作?

+0

你是什麼意思「通知類型啓用」? – 2009-12-11 06:55:26

+0

默認情況下,用戶可以選擇複選框來接收該通知的通知部分中,django-notification始終將其設置爲啓用 - 我希望某些內容在默認情況下處於禁用狀態。 – 2009-12-11 19:00:49

+0

我認爲我的答案處理你想要的東西:)讓我知道如果你不明白它。 – sontek 2009-12-15 19:47:38

回答

3

它根據類型本身的「默認」列自動設置,默認情況下電子郵件的靈敏度爲2,所以如果您將默認值設置爲新通知類型默認值「1」,它將不會再設置它默認爲您的用戶,創建新的通知類型時的默認值是'2',這將允許它發送給每個人。

+0

嗨Sontek - 我不完全清楚如何實現這一點 - 這是否意味着我在創建新的通知類型的時候,我可以特別指定默認爲1 - 所以一些啓用,一些不是? 我目前創建一條通知,例如: notification.create_notice_type(「moderation_messages」,「Messages from moderators」,「Email notification when someone flags on your posts」) – 2009-12-15 22:15:05

+0

Sontek - 我在Django admin中看到界面我可以點擊我創建的其中一種通知類型,並顯示其默認值爲「2」 - 但是,如果我編輯並將其更改爲「1」,它不會在我的任何用戶通知頁面上更改。 – 2009-12-15 23:27:12

+0

查看代碼是唯一可行的方法... Inside NoticeType模型: #默認情況下僅適用於敏感度小於或等於此數字的媒體 - > default = models.IntegerField(_('default' )) 和默認: #垃圾郵件敏感如何是介質 NOTICE_MEDIA_DEFAULTS = { 「1」:2#電子郵件 } 並在get_notification_setting方法: 默認=(NOTICE_MEDIA_DEFAULTS [介質] <= notice_type.default) so NOTICE_MEDIA_DEFAULTS [medium] = 2 如果您的notice_type.default爲1 2 <= 1 = false,所以默認選擇= false。 – sontek 2009-12-16 03:20:45

0

查看代碼,發送通知的決定因素是「默認」列與靈敏度過濾器NOTICE_MEDIA_DEFAULTS [中]之間的比較。

這是否工作

from notification import models as notification 

notification.create_notice_type("friends_invite", "Invitation Received", "you have received an invitation", default=0) 
+0

這就是我告訴他要做的,^ _^ – sontek 2009-12-16 15:57:54

+0

czarchaic - 非常感謝你花時間回答這個問題,你是對的,但我接受了sonteks的回答,因爲他得到了第一個,但是我真的很感謝你幫幫我。 – 2009-12-16 20:17:58