2016-12-10 41 views
1

我想添加一個簡報註冊到我的網站,它有一個Django的後端設置。提交到我的網站時,我應該如何處理電子郵件信息?我應該爲電子郵件創建一個新模型嗎?有沒有一種方法可以將電子郵件輸入到我的網站,並將它們動態保存到我的sendgrid帳戶中?用Django&Sendgrid創建郵件列表?

我想爲我的所有電子郵件廣告系列使用sendgrid,我希望立即將數據發送到那裏,而不是保存在模型表中,然後手動將聯繫人輸入到我的帳戶中。

+0

您可以通過Marketing Campaigns API直接在SendGrid中存儲所有內容https://sendgrid.com/docs/API_Reference/Web_API_v3/Marketing_Campaigns/index.html – bwest

回答

0

只需在Sendgrid的服務器上存儲所有內容。 Sendgrid具有Python的API綁定:pip install sendgrid

  1. 安裝Celery或任何其他異步任務隊列在後臺處理註冊請求。我建議芹菜,它很好地支持與Django很好地發揮。
  2. 設置異步處理註冊等任務:

    # your_app/tasks.py: 
    @celery.shared_task 
    def newsletter_signup(email, newsletter): 
        # use sendgrid API here 
        pass 
    
    
    # your_app/views.py 
    def some_view(request): 
        # do what you need, and send a sign up task whenever you want: 
        newsletter_signup.delay(request.user.email, 'foobar') 
        return HttpResponse('hello, world') 
    

其實,你可以直接使用他們的API(不含芹菜)。但是在這種情況下,由於與API通信花費了額外的時間,因此請求處理將花費更多時間。