2013-03-25 269 views
0

我试图使用django通知每次用户修改,创建或删除数据库条目发送电子邮件给管理员。问题是,当我创建的通知类型,并确认它们的存在,在发送实际的电子邮件,该电子邮件发送这个样子的:Django的通知更改默认模板

You have received the following notice from example.com: 

Entry has been changed. <--- this line being the email content 


To see other notices or change how you receive notifications, please go to http://example.com 

有没有办法删除的第一行和最后一行邮件正文?我不知道这个默认模板的位置,所以我不能改变它。任何有识之士将不胜感激!

+0

你怎么安装Django通知?通过pip,easy_install,apt-get,...? – Vincent 2013-03-25 16:09:45

+0

sudo pip install django-notification是命令。 – Kenny 2013-03-25 16:41:21

回答

-1

您应该找到pip的默认安装目录。如果你使用Linux,它应该是/usr/local/lib/python2.7/dist-packages,如果你使用python2.7。然后找到django-notification目录并切换到模板目录。他们在这里!

一个好主意是将应用程序复制到您的项目目录并在此处进行更改。

我只是建议你看看virtualenv,它会给你更多的灵活性。

+0

我找到了我想更改的模板文件:/usr/local/lib/python2.7/dist-packages/notification/templates/notification/email_body.txt。但是,它是写保护的,意味着我所做的任何更改都无法保存。我可以在管理员中覆盖此模板吗?我尝试在同名的项目中为模板文件夹中的模板更改版本,但似乎没有任何效果。 – Kenny 2013-03-25 17:04:26

+0

您应该将整个应用程序'/ usr/local/lib/python2.7/dist-packages/notification /'复制到您的项目目录中,使用'sudo chown -R login directory'更改所有权,然后您将能够编辑任何你想要的。 – Vincent 2013-03-25 17:07:22

+0

啊,它的工作!谢谢! – Kenny 2013-03-25 17:43:41

0

更改系统库不是一个好主意。您可以从您的应用程序做到这一点:

1)将notification应用您的应用程序下面settings.py中

INSTALLED_APPS = (
     # ... 
     'your_app', 
     'notification', 
     # ... 
) 

2)your_app/templates/notification/目录下创建的一组基本模板:

  • short.txt
  • notice_settings.html
  • notice.html
  • full.txt
  • full.html
  • email_subject.txt
  • email_body.txt
  • base.html文件
+0

我没有建议更改系统库,而是复制一个pip软件包进行编辑 - 避免重新创建所有模板。即使我了解你的意见,是否值得降级我的答案? – Vincent 2014-09-22 17:23:34

+0

你是对的,对不起。只要有人接受我的编辑就会撤消。你可以让我知道什么时候发生。 – vmassuchetto 2014-09-22 20:41:36