我正在开发一个多语言网页。
网址.py
urlpatterns = patterns('',
url(r'^$', 'mysite.views.home', name='home'),
url(r'^(?P<lang>\w{2})/$', 'mysite.views.home')
url(r'^admin/', include(admin.site.urls)),
)
View .py
def home(request,lang='fa'):
language_mapping = {'en': 'en', 'ar': 'ar'}
selected_lang = language_mapping.get(lang, 'fa')
return render_to_response('index.html',{'lang':selected_lang})
在我的 html 中我有一些 <img>标签
<img src="media/image.jpg" alt="">
问题是如果我像 mysite.com 这样运行我的地址,我可以看到图片,但地址是这样的
mysite.com/fa/
mysite.com/en/
mysite.com/ar/
让我的形象消失,因为它让我的地址像mysite.com/en/media/image.jpg
那么我怎样才能删除/lang/来 self 在 <img> 中的地址标签?
也许是这样的?
url(r'^(?P<lang>\w{2})/media' = r'^/media/' )
我不知道在哪里做这个。
请您参考如下方法:
两件事:
您可以将
'media/img.jpg'更改为'/media/img.jpg'(注意前导斜杠),使其成为相对于根目录的 url——因此它总是请求mysite.com/media/img.jpg而不是附加 lang 标签。您可以切换到使用 Django 的 static file management从长远来看,这可能是一个更好的主意。
