Size: a a a

Django [ru] #STAY HOME

2021 February 10

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Nik S
вроде бы тоже самое... в конце проверяет есть ли это QuerySet и делает .all(), а может и не сделать..

get_queryset() выводит меня сюда:
class GenericAPIView(views.APIView):
   queryset = None
   serializer_class = None
   lookup_field = 'pk'
   lookup_url_kwarg = None
   filter_backends = api_settings.DEFAULT_FILTER_BACKENDS
   pagination_class = api_settings.DEFAULT_PAGINATION_CLASS

   def get_queryset(self):
       assert self.queryset is not None, (
           "'%s' should either include a `queryset` attribute, "
           "or override the `get_queryset()` method."
           % self.__class__.__name__
       )

       queryset = self.queryset
       if isinstance(queryset, QuerySet):
           queryset = queryset.all()
       return queryset
так или ты не понял мой вопрос или я не понимаю чего-то. роутер должен построить путь к твоей вьюхе, для этого он берет твой кверисет, но у тебя он не указан, а значит указывается родительский котороый None
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Nikolay Cherniy
так или ты не понял мой вопрос или я не понимаю чего-то. роутер должен построить путь к твоей вьюхе, для этого он берет твой кверисет, но у тебя он не указан, а значит указывается родительский котороый None
кверисета нет, как путь строить не понятно, все сломалось. мне кажется логично
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Vadzim _B
Вот поэтому я и спрашиваю, что счас более актуально
всегда более актуальна документация, хорошие материалы там где делал скрин, большего посоветовать сложно
источник

NS

Nik S in Django [ru] #STAY HOME
 def get_queryset(self):
       return Wishlist.objects.all()  # а это же тот кверисет?
почему-то не компенсирует
queryset = Wishlist.objects.all()
источник

V_

Vadzim _B in Django [ru] #STAY HOME
Nikolay Cherniy
всегда более актуальна документация, хорошие материалы там где делал скрин, большего посоветовать сложно
понял, спасибо)
источник

NS

Nik S in Django [ru] #STAY HOME
в доках тоже так, или оно из self поэтому проходит?
источник

V_

Vadzim _B in Django [ru] #STAY HOME
Nikolay Cherniy
всегда более актуальна документация, хорошие материалы там где делал скрин, большего посоветовать сложно
А если информация воспринимается лучше визуально, может быть можете предложить какие-нибудь туториалы на ютубе
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Nik S
 def get_queryset(self):
       return Wishlist.objects.all()  # а это же тот кверисет?
почему-то не компенсирует
queryset = Wishlist.objects.all()
потому что откуда берет роутер? правильно из атрибута класса, а как роутер вызовет метод несуществующего инстанса? правильно - не как
источник

NS

Nik S in Django [ru] #STAY HOME
ладно, туплю..
так а можно get_queryset() использовать чтобы basename не потребовал?
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Vadzim _B
А если информация воспринимается лучше визуально, может быть можете предложить какие-нибудь туториалы на ютубе
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Nik S
ладно, туплю..
так а можно get_queryset() использовать чтобы basename не потребовал?
нет, или указываешь бэйснейм, или кверисет в атрибутах класса
источник

V_

Vadzim _B in Django [ru] #STAY HOME
пасиба)
источник

NS

Nik S in Django [ru] #STAY HOME
Nikolay Cherniy
нет, или указываешь бэйснейм, или кверисет в атрибутах класса
понятно..
а бейснейм накладывает непредвиденные последствия прописаный?
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Nik S
понятно..
а бейснейм накладывает непредвиденные последствия прописаный?
Если не совпадает с названием модели - может вылезти если урлы генерируемые используешь в сериализаторах
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Nikolay Cherniy
Если не совпадает с названием модели - может вылезти если урлы генерируемые используешь в сериализаторах
может еще чего, но я не встречал
источник

NS

Nik S in Django [ru] #STAY HOME
router.register(r'wishlist', views.WishlistsViewSet)

Вроде я бы я всё фильтрую, но при залогированом админе, а я всеравно получаю общий список всех пользователей.
источник

NS

Nik S in Django [ru] #STAY HOME
источник

NS

Nik S in Django [ru] #STAY HOME
Nik S
router.register(r'wishlist', views.WishlistsViewSet)

Вроде я бы я всё фильтрую, но при залогированом админе, а я всеравно получаю общий список всех пользователей.
видимо def list()
при def filter_queryset() -
мешает отфильтрованному кверисету и возвращает изначальный кверисет .all()
и вовсе не нужен
источник

SM

Sergey Matveyev in Django [ru] #STAY HOME
Всем привет!
Есть очень большая таблица, делаю экспорт данных из неё. Экспорт идёт по айдишкам внешнего ключа, которые приходят с фронта, их может быть как пару десятков так и пару десятков тысяч. Подскажите как лучше сделать c точки зрения обработки больших запросов?:
rows = ModelName.objects.filter(fk_id__in=fk_ids)
for row in rows.iterator():
   ...операции с row...

Или:
rows_ids = ModelName.objects.filter(fk_id__in=fk_ids).values_list('id, flat=True)
for row_id in rows_ids:
  row = ModelName.objects.get(id=row_id)
   ...операции с row...

Или вообще как-то иначе?
источник

NS

Nik S in Django [ru] #STAY HOME
А как такое может быть - у меня на drf заклинило admin-а авторизованного и не logout-иться? даже после перезапуска сервера.
при том что на фронте - состояние неавторизованое по basicauth
источник