2

slug가 데이터베이스 테이블에 저장되는 django-modeltranslation을 사용하여 URL 접두어와 URL 슬러그를 번역하고 싶습니다. 언어를 바꾼 후에 나는 같은 페이지에 머물러 있고 언어 만 바꾸고 싶습니다.장고 언어 스위치가 작동하지 않습니다.

http://docs.djangoproject.com/en/dev/topics/i18n/translation/#the-set-language-redirect-view

문제는 언어가 단지 홈페이지에 전환된다는 점이다 : 여기에 설명 된 바와 같이 나는 형식 언어 스위처를 사용하고 있습니다. 다른 페이지는 언어 및 URL 변경없이 새로 고쳐집니다.

다른 언어로 현재 url을 가져 오는 방법은 있습니까?

루트 프로젝트에서

것은 내가 다음 한 urls.py :

응용 프로그램라는 프로젝트에
urlpatterns = patterns('', 
    # Examples: 
    (r'^i18n/', include('django.conf.urls.i18n')), 
    url(r'^$', 'portfolio.views.home', name='home'), 
    # url(r'^blog/', include('blog.urls')), 
    url(r'^admin/', include(admin.site.urls)), 
) 

urlpatterns += i18n_patterns('', 
    url(_(r'^projects/'), include('projects.urls', namespace='projects')), 
) 

내가이 URL을 :

urlpatterns = patterns('', 
    url(r'^$', all_projects, name='projects'), 
    url(r'^(?P<slug>[\w-]+)/$', project_detail, name='project_detail'), 
) 

답변

1

이 당신이 놓치고 복사 - 붙여 넣기 - 문제가없는 경우 에 url 함수 이름이 있습니다. 위에 제공된 코드의 3 행을 다음으로 변경하십시오.

urlpatterns = patterns('', 
    ... 
    # The following line need to be changed from 
    # (r'^i18n/', include('django.conf.urls.i18n')), 
    # to 
    url(r'^i18n/', include('django.conf.urls.i18n')), 
    ... 
) 
관련 문제