Я перенес платформу с django 1.11 на django 2 на прошлой неделе без проблем, вплоть до сегодняшнего дня, когда я пытался обновить свои URL-адреса.У меня есть эти 3 строки кода:
1. url(r'^track/(?P<track_id>[0-9]+)/user/playlists', views.music),
2. path(r'track/<int:track_id>/user/playlists', views.music),
3. re_path(r'^track/(?P<track_id>[0-9]+)/user/playlists',views.music),
- оригинальная строка, которая отлично работала в django 1.11.
- новая строка, которую я создал, чтобы заменить строку 1. Я удалилвставьте '^' и замените RegEx.
- на строку, которую я сейчас использую, потому что она работает нормально.
Моя проблема заключается в том, что мой тест не проходит, когда я использую строку 2но проходит, когда я использую строку 3. Что может вызвать такое поведение?
PS: Сбой теста - это просто тест, который передает 14 на URL и проверяет ответ.Ответ должен быть 200, но вместо 404.На самом деле, я попробовал pdb в методе music, но тест завершился, не останавливаясь на этом, а это значит, что он даже не вошел.
self.check_response('/track/%d/user/playlists/' % 14)