この問題についてCampaign Monitorのサポートに連絡し、キャンペーンを作成するために必要な情報とテストメールを送信するためのリストを受け取った。 send_preview
の間に明示的に電子メールを指定するので、リストは空でも構いません。私の場合、名前の一意性を保証するために、リストとキャンペーンの名前にGUIDを補間します。
メールが送信されたらすぐにこれらの一時的なキャンペーンとリストを削除できます。キャンペーンに関連付けられているリストは削除できないため、キャンペーンを最初に削除してください。
cm_token = {'api_key': settings.CAMPAIGN_MONITOR_ADMIN_API_KEY}
campaign_monitor = CreateSend(cm_token)
cm_list = List(cm_token)
list_id = cm_list.create(email_client_id, "Temporary empty list for preview {}".format(uuid.uuid1()), None, None, None)
# cm_subscribers = []
# for recipient in recipient_list:
# cm_subscriber = Subscriber(cm_token)
# cm_subscriber.add(list_id, recipient[0], "Preview recipient {}".format(uuid.uuid1()), None, None)
# cm_subscribers.append(cm_subscriber)
cm_campaign = Campaign(cm_token)
cm_campaign.create_from_template(
customer_account.email_client_id,
subject,
"Temporary campaign for preview {}".format(template.id), # name
from_email, # from_name
from_email,
from_email, # reply_to
[list_id], # list_ids
None, # segment_ids
template.template_id,
{} # template_content
)
cm_campaign.send_preview(recipient_list[0])
# delete temporary list and campaign
cm_campaign.delete()
cm_list.delete()
http://codereview.stackexchange.com/search?q=djangoで同じ質問をすると、適切なフィードバックが得られます。これはレビューのフォーラムではありません –
これは概念的な質問ではなく、レビューです。私はその理由のためにソースコードを含んでいませんでした、それは本当の質問から焦点を外すかもしれません。私はいくつかのコードでcodereviewを試してみましょう。 –