Size: a a a

Django [ru] #STAY HOME

2020 October 12

M

Mike in Django [ru] #STAY HOME
def foo(self, request, **kwargs):
  request.GET('data')?
источник

ИХ

Ильяс Хакиев... in Django [ru] #STAY HOME
data = kwargs.get('data')
источник

ИХ

Ильяс Хакиев... in Django [ru] #STAY HOME
Mike
def foo(self, request, **kwargs):
  request.GET('data')?
так вроде тоже можно
источник

ИХ

Ильяс Хакиев... in Django [ru] #STAY HOME
ставь точку остановы и там точно увидишь, что и где приходит
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Ильяс Хакиев
data = kwargs.get('data')
в его вьюхе, так работать не будет. Она, похоже, не в CBV стиле написана
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
а сорри - ошибся)
источник

ИХ

Ильяс Хакиев... in Django [ru] #STAY HOME
Почему не сириализует
category__name?

result = serializers.serialize('json', hardware, fields=(             'pk', 'full_name', 'category__name', 'ip', 'domain_name', 'hardware_purpose'))
источник

M

Mike in Django [ru] #STAY HOME
Ильяс Хакиев
data = kwargs.get('data')
None вернул
источник

M

Mike in Django [ru] #STAY HOME
Artem Gubatenko
в его вьюхе, так работать не будет. Она, похоже, не в CBV стиле написана
In CBV
источник

M

Mike in Django [ru] #STAY HOME

class FavoriteView(APIView):

   def get(self, request, **kwargs):
       print(kwargs.get('data'))
       print('-----')
       ids = [3, 6, 8]
       f = Topic.objects.filter(id__in=ids).all()
       serializer = TopicSerializer(f, many=True)
       return Response(serializer.data)
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Mike
None вернул
показывй код: вьюхи и урл
источник

M

Mike in Django [ru] #STAY HOME
localhost:8000/app/favorite/?data=[1,2,3]
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Mike
localhost:8000/app/favorite/?data=[1,2,3]
ты так и написал в urls.py?
источник

M

Mike in Django [ru] #STAY HOME
Вот смотрите.
print(request.GET) возвращает мне <QueryDict: {'data': ['[1,2,3]']}>
источник

M

Mike in Django [ru] #STAY HOME
Artem Gubatenko
ты так и написал в urls.py?
Нет, это postman сам туда автоматом вписывает, я лишь передаю это как параметром
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Mike
Нет, это postman сам туда автоматом вписывает, я лишь передаю это как параметром
или доставай сам из request: https://www.django-rest-framework.org/api-guide/requests/
или правильно оформь урл в urls.py: https://docs.djangoproject.com/en/3.1/ref/urls/ и доставай из параметров функции/kwargs
источник

AS

Anton Saiev-Esoyants in Django [ru] #STAY HOME
Подскажите, пожалуйста, я новичок в Django - мне нужно написать промежуточное ПО, тестирую вывод:
def AuthCooke(request):
   print(request.COOKIES)
   return request
Выдает ошибку - что у request нет атрибута .COOKIES - похоже что request это объект
<function BaseHandler._get_response at 0x000001C03BBA55E8>
Хотя в стандартных ПО выводится данные request.COOKIES
Не могу понять, в чем может быть проблема?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Anton Saiev-Esoyants
Подскажите, пожалуйста, я новичок в Django - мне нужно написать промежуточное ПО, тестирую вывод:
def AuthCooke(request):
   print(request.COOKIES)
   return request
Выдает ошибку - что у request нет атрибута .COOKIES - похоже что request это объект
<function BaseHandler._get_response at 0x000001C03BBA55E8>
Хотя в стандартных ПО выводится данные request.COOKIES
Не могу понять, в чем может быть проблема?
думаю, кастомный middleware надо вызвать позже
.COOKIES словарь там должен быть: https://docs.djangoproject.com/en/3.1/ref/request-response/#django.http.HttpRequest.COOKIES
источник

AS

Anton Saiev-Esoyants in Django [ru] #STAY HOME
Artem Gubatenko
думаю, кастомный middleware надо вызвать позже
.COOKIES словарь там должен быть: https://docs.djangoproject.com/en/3.1/ref/request-response/#django.http.HttpRequest.COOKIES
с settings в списке MIDDLEWARE - последним стоит
источник

M

Mike in Django [ru] #STAY HOME
Artem Gubatenko
или доставай сам из request: https://www.django-rest-framework.org/api-guide/requests/
или правильно оформь урл в urls.py: https://docs.djangoproject.com/en/3.1/ref/urls/ и доставай из параметров функции/kwargs
Вообщем в Postman'e передаю в body, не как параметр. data=1,2,3,4. Во views.py request.data['data'] возвращает строку 1,2,3,4. Осталось дело за малым.
Всё, спасибо, за помощь парни.
источник