微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将Django表单写入文本文件

如何解决如何将Django表单写入文本文件

| 我正在创建一个django网站(使用django表单),该网站允许用户订阅其电子邮件。如何将电子邮件发送到文本文件中?目前,我有一个cron作业,该作业运行python脚本,每天早晨向所有订阅者发送电子邮件。这是执行此操作的最佳方法,还是可以使用Django表单中的某些内置功能?     

解决方法

如果我对您的理解正确,那么您有一个用户列表(来自他们的电子邮件地址)已保存到数据库中,并且想要将该列表保存到文本文件中? 好吧,您可以输入
./manage.py shell
并输入以下内容:
# I assumed the email addresses are in User.email; modify as needed to conform to your model.

with open(\'email.txt\',\'w\') as f:
    for u in User.objects.all(): 
        f.write(u.email + \'\\n\')
您还可以编写管理命令来执行此操作: http://docs.djangoproject.com/en/dev/howto/custom-management-commands/ 或创建一个简单的视图和模板,以创建一个文本文件,并在列表中列出所有电子邮件地址。尽管为了避免用户收到垃圾邮件密码,请对此进行保护,并且不要将其公开访问。一些简单的事情(不是私有的)应该可以工作: urls.py:
from django.views.generic.list_detail import object_list
urlpatterns = patterns(\'\',(r\'^full_emails/$\',\'object_list\',{\'template\': \'template/text.txt\',\'queryset\'=User.objects.all()}
)
template / text.txt:
{% for user in object_list %}
   {{ user.email }}
{% endfor %}
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。