2

如果您在管理员中有一个日期时间字段,并且您调用“今天”链接,它似乎会引发一个异常calendar.js,它引用了一个未定义的全局方法get_format。这似乎没有在任何最新的管理 js 文件中定义。

编辑:

似乎它在系统上使用了i18n.py与我的标准 django 1.1 不同的文件。这是我的 wsgi 文件:

import os, sys, site

site.addsitedir( '/srv/python-environments/django1point2/lib/python2.5/site-packages')

sys.path.append('/srv/')
sys.path.append('/srv/workarounds')

os.environ['DJANGO_SETTINGS_MODULE'] = 'workarounds.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

我需要更改什么,以便它依赖于i18n.py我指定的 addsitedir 字符串而不是我的系统默认值?

4

2 回答 2

2

管理小部件在正常情况下肯定可以工作(我在 Django 主干、1.2 和 1.2.1 下使用过它)。问题是“你的情况有什么不同?”

作为记录,您要查找的功能在此处定义

我的第一个想法可能是您修改了管理模板并且没有包含相应的脚本。第二个想法可能是您在某处有旧文件的缓存版本。

v1.2 中的 javascript i18n 框架和本地化机制发生了很多变化,因此最好从您使用的设置开始。

总而言之,您需要提供更多信息才能获得有用的答案。

于 2010-06-21T07:56:22.117 回答
2

您的 .wsgi 代码将 virtualenv 站点包放在系统站点包之后,因此全局包将优先。我使用以下片段(来自我推荐的与 virtualenv 一起使用的 mod_wsgi 文档)将 virtualenv 站点包放在首位:

ALLDIRS = [os.path.join(virtenv, 'lib',
                                 'python%s' % sys.version[:3],
                                 'site-packages')]

# Remember original sys.path.
prev_sys_path = list(sys.path)

# Add project directory
sys.path.append(project)

# Add each new site-packages directory.
for directory in ALLDIRS:
  site.addsitedir(directory)

# Reorder sys.path so new directories at the front.
new_sys_path = []
for item in list(sys.path):
    if item not in prev_sys_path:
        new_sys_path.append(item)
        sys.path.remove(item)
sys.path[:0] = new_sys_path
于 2010-06-21T16:36:12.957 回答