我使用 Django 构建了一个 Web 应用程序,除其他外,它可以向客户发送电子邮件。当我处于开发模式时,我不希望我的任何测试电子邮件实际发送给客户。相反,我想将电子邮件重新路由给我。
目前,在我的开发服务器(通过 git 克隆了所有代码)上进行开发时,我只需注释掉包含客户电子邮件地址的行,并添加我的电子邮件地址。这似乎是处理这种情况的一种非常糟糕的方法。我已经被它烧死了(向所有客户发送了 1,700 封电子邮件,哦,看,他们都来到 我的电子邮件地址......残酷)
我正在考虑实施一个项目范围的变量DEV
,称为settings.py
. 然后,我将构建一个上下文处理器,它只返回这个变量的值。这样,在我看来,我可以简单地调用上下文处理器,如果DEV
是真的,我可以将email-to
值设置为我的电子邮件地址。否则,该email-to
地址将是客户电子邮件。最后,我可以设置git
忽略我的settings.py
文件,以便开发服务器DEV
变量始终是True
,生产服务器DEV
变量始终是False
.
问题解决了?这是一个好方法吗?有没有更好的方法来解决这个问题?
编辑
似乎我误解了上下文处理器是在模板中使用的事实,而不是在视图中。我想我的问题实际上是,我该如何处理这个问题,以便我可以从任何角度检查这个变量?