Как получить объект с полем поиска в Django Rest через React?

Я использую фреймворк Django Rest в качестве API и React для front-end.

У меня все настроено для отображения React через Django. И все работает в разработке.

Однако при использовании производственной сборки я столкнулся с проблемой при попытке получить один объект из базы данных, используя 'slug' в качестве поля поиска.

Например, я могу сделать звонок, используя поле id

axiosInstance
    .get('/articles/1')

который нацелен на этот вид

class ArticleViewSet(viewsets.ModelViewSet):
    ...

и возвращает нужную статью.

Однако когда я меняю поле поиска на 'slug'

# views.py
class ArticleViewSet(viewsets.ModelViewSet):
    lookup_field = 'slug'
    ...

# serializers.py
class ArticleSerializer(serializers.Serializer):
    class Meta:
        ...
        lookup_field = 'slug'

и вызов аксиоса к

console.log(slug)  # Logs "article-1" as it should
axiosInstance
    .get(`/articles/${slug}`)  # This results in /articles/article-1

Затем файл index.html возвращается мне.

Метод извлечения ArticleViewSet даже не вызывается.

Что еще более странно, так это то, что я все еще могу просмотреть статью, используя slug, перейдя непосредственно к api, например, с помощью "localhost:8000/articles/article-1" в моем браузере.

Возвращает нужную статью.

Как я могу вызвать метод retrieve с использованием slug в производственной сборке?

Любая помощь будет высоко оценена, спасибо.

Вернуться на верх