【发布时间】:2016-05-26 20:17:47
【问题描述】:
一旦我完成并测试了一个模块,我想在生产服务器上部署我的应用程序。到目前为止,应用程序正在使用 Django 1.9.2 框架(使用 Python 3.5)在嵌入式服务器上工作。我在 Centos 7 上通过 Apache 通过 mod_wsgi 部署了 Django。 部署后我做了一些测试。似乎 Templatetags 无法正常工作,因为总是将“0”返回(或根本不计算?)到模板,而 mod_wsgi 正在使用中。即使我将任何常量放入模板标签(如下)并尝试将其返回模板,也同样适用,只是为了测试它是如何工作的。 我用同一台机器(Linux)做了完全相同的检查,但我使用了嵌入式服务器。在嵌入式服务器的情况下,所有信息都被正确传递和计算。 我认为这是与权限相关的问题。我仔细检查了一下,似乎所有文件访问权限都已正确设置。
<VirtualHost *:80>
ServerName nid.example.com
<Directory /home/nid/nid/nid>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess nid python-path=/home/nid/nid:/home/nid/nid-venv/lib/python3.4/site-packages
WSGIProcessGroup nid
WSGIScriptAlias / /home/nid/nid/nid/wsgi.py
</VirtualHost>
模板标签:
from django import template
import datetime
register = template.Library()
@register.assignment_tag()
def count_expire_days(end_date, renew_date):
last_valid_day = end_date
first_renew_day = renew_date
today = datetime.date.today()
diff_last_day = last_valid_day - today
diff_whole_period = last_valid_day - first_renew_day
period = diff_whole_period.days
expire_days = diff_last_day.days
percentage = (expire_days/period)*100
return int(percentage)
我在玩文件权限,但没有运气。 有什么问题?如何调试 Django 模板标签,以了解为什么这不起作用?
【问题讨论】:
-
什么意思,模板标签不起作用?当你使用它们时会发生什么?你看到什么错误?另外,请出示您的模板和视图。
-
是的,抱歉,我忘了提供所有必需的信息。请检查上面的描述。一般来说,应用程序可以正常工作,但这是使用 mod_wsgi 进行 Django 部署的问题。