레거시 앱에서는 URL이 있는지 확인하고 그렇지 않은 경우 다른 위치로 리디렉션해야합니다. 문제는 url 파일에 url이 값 집합에 있는지 확인해야하며이 작업을 가장 효과적으로 수행 할 수있는 방법이 확실하지 않다는 점입니다.슬러그가 있는지 동적으로 확인하십시오.
예를 들어, 프로젝트와 도시 모두 동일한 URL 패턴을 공유합니다. 예 : /projects/london
및 /projects/my-project-name
.
먼저 슬러그가 도시와 일치하는지 확인한 다음 프로젝트보기를 반환하지 않으면 도시가 프로젝트 이름과 일치 할 수 없습니다.
url(r'^projects/(?P<project-name>[-\w]+)', get_project, name='project-view'),
url(r'^projects/.*', get_city, name='city-view'),
나는 이것이 매우 지저분 알고, 나쁜 종합 형하지만 불행히도 그것은 순간에 변경 될 수있는 일이 아니다 다음과 같이
내 URL은 현재 구성되어 있습니다. 따라서 내 목표는 project-name
이 도시 일 수 있는지 먼저 확인하고 리디렉션 루프에 빠지지 않고 해당보기로 리디렉션 할 수 있는지 파악하는 것입니다. 나는 이런 식으로 뭔가 할 수 있다면
london|paris|new-york
동적
감사합니다. 매우 유용합니다. 나는 잡초에 덫을 놓고 조금 빗나간 다. 그리고 내가보기/라우터에 모든 논리를 넘겨 줘야한다는 것을 놓쳤다. – djq