Могу ли я использовать slug из другого файла urls.py?

Я пытаюсь получить доступ к полю slug из другого файла urls.py, и получаю эту ошибку

FieldError at /new-api/tournaments/fifa-world-cup/teams/
Unsupported lookup 'custom_url' for ForeignKey or join on the field not permitted.

Мне интересно, причина, по которой я получаю эту ошибку, в том, что вы не можете этого сделать, или это другая причина

У меня есть 2 файла для урлов, один включает в себя другой,

urls.py (турнир)

urlpatterns = [
    path("", views.getNewTournaments, name="tournaments"),
    path("<slug:custom_url>/", views.getNewTournament, name="tournament"),
    path("create/", views.postNewTournament, name="post-tournament"),
    path("<slug:custom_url>/teams/", include("teams.urls"), name="tournament-teams"),
]

urls.py (команды)

urlpatterns = [
    path("", views.teams.as_view(), name="teams"),
]

Вот файлы views.py

views.py (турниры)

@api_view(["GET"])
def getNewTournaments(request):
    tournaments = NewTournament.objects.all()
    serializer = NewTournamentSerializer(tournaments, many=True)
    return Response(serializer.data)

views.py (команды)

class teams(APIView):
    def get(self, request, custom_url):
        teams = Team.objects.filter(tournament__custom_url=custom_url)
        serializer = TeamSerializer(teams, many=True)
        return Response(serializer.data)

Так я понял, что моя ошибка в том, что моя модель для команд имела прошлую модельную версию турниров

Старый

class Team(models.Model):
    tournament = models.ForeignKey(Tournament, on_delete=models.CASCADE)

Новый

class Team(models.Model):
    tournament = models.ForeignKey(NewTournament, on_delete=models.CASCADE)
Вернуться на верх