我在单独的js文件中有自定义管理表格验证js代码。
我想渲染相应的js文件,这意味着如果LANGUAGE_CODE
为'es'
,则js文件应以myjsfile_es.js
结尾
我做了:
class BlogForm(forms.ModelForm):
class Media:
js = ('js/custom_%s.js' % get_language(),)
实际网页的网址是:
http://127.0.0.1:8000/es/admin/blog/blog/add/
但是get_language
正在提供'en'
,所以我最终为custom_en.js
页面提供了错误的js文件es
,
en
是settings.py中的默认语言。
如何在admin.py中获取活动语言?
答案 0 :(得分:1)
也许这是因为django从浏览器设置中获取了您的语言。我在其中一个项目中遇到了同样的问题,并使用该中间件解决了这个问题:
# -*- coding: utf-8 -*-
class IgnoreAcceptLanguageMiddleware(object):
"""
Ignore Accept-Language HTTP headers
"""
def process_request(self, request):
if request.META.has_key('HTTP_ACCEPT_LANGUAGE'):
del request.META['HTTP_ACCEPT_LANGUAGE']
答案 1 :(得分:-1)
您可以从django.utils.translation.get_language()
检查文档: