我使用的是django 1.3和python 2.7。用於編寫管理命令的Pythonic解決方案
客戶要求:
我有個客戶要求其說,對用戶活動的電子郵件應生成基於他/她喜歡的用戶。這些偏好基於時間,因此可以是每日,每週或每月。
的偏好多可選擇的,這意味着一個用戶可以接收例如每日以及每週通知。
MODELS.PY:
class Preference(models.Model):
description = models.CharField(max_length=200)
class Notification(models.Model):
user = models.ForeignKey(User)
preferences = models.ManyToManyField(Preference)
類偏好只包含時間偏好即每日,每週,每月
類通知將保持特定用戶的偏好。管理命令將使用此表向用戶發送電子郵件。
問題:
我有些懷疑,而用的管理命令。
- 我是否應該只寫一個命令來處理所有3個或更多個案件或每個案件1個命令?
- 我應該向偏好模型添加更多信息嗎?例如,應該每天發送郵件的小時數?
- cron是否負責根據時間偏好運行命令?
- 什麼是解決這個問題的最pythonic方法(如果有人想提出)?
所以基本上你的思維過程同意嗎?我正朝着正確的方向前進? –
是的,我也想忽略django-celery和rabbitMQ。 –
是的,我會執行它的cron方式。 – karthikr