RetrieveAPIView должен вызываться с аргументом ключевого слова URL - PullRequest
0 голосов
/ 07 мая 2018

Итак, я пытаюсь указать поиск и получаю сообщение об ошибке

Ожидаемое представление GetEmployersEmailUnique_RetrieveAPIView будет вызываться с аргументом ключевого слова URL с именем "user__email". Исправьте URL-адрес conf или правильно установите атрибут .lookup_field в представлении.

Вот так выглядит мой URL

http://127.0.0.1:8000/api/employer/email_available/?user__email=someEmaol@gmail.com

и вот как выглядит мой путь к URL

url(r"^email_available/",GetEmployersEmailUnique_RetrieveAPIView.as_view()),

и вот так выглядит мой взгляд

class GetEmployersEmailUnique_RetrieveAPIView(RetrieveAPIView):
    queryset = modelEmployer.objects.all()
    lookup_field = 'user__email'
    serializer_class = Serializer_ListEmployer
    permission_classes = (permissions.AllowAny,)

modelEmployer имеет непосредственное отношение к модели пользователя

Есть идеи, что я могу здесь делать не так?

1 Ответ

0 голосов
/ 07 мая 2018

Вы не добавили переменную в свой URL. Это необходимо сделать, когда вы используете RetrieveAPIView. Ваш URL должен выглядеть так:

url(
    r"^email_available/(?P<user__email>[\w.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4})/$",
    GetEmployersEmailUnique_RetrieveAPIView.as_view()
),
...