Size: a a a

Django [ru] #STAY HOME

2020 June 19

N

Nire in Django [ru] #STAY HOME
Robert B. Garza
Подскажите, хочу держать все приложения на ветку выше, т.е в папке apps, посмотрел что это делается таким образом в сеттингс:

PROJECT_ROOT = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(PROJECT_ROOT, 'apps'))


Но синтаксис пучарма ругается на это, хотя все работает
Сюрс рут выше поставь
источник

N

Nire in Django [ru] #STAY HOME
Жмякни по папке кнопошкой и внизу можно будет его выбрать
источник

N

Nire in Django [ru] #STAY HOME
А, вопрос может не так понял.
Скинь архитектуру текущую
источник

R

Robert B. Garza in Django [ru] #STAY HOME
Nire
А, вопрос может не так понял.
Скинь архитектуру текущую
Вот архитектура и настройки
источник

N

Nire in Django [ru] #STAY HOME
А пучарм на что ругается?
источник

СЧ

Сергей Чурмин... in Django [ru] #STAY HOME
Блин у меня от этих статей уже алергия
источник

R

Robert B. Garza in Django [ru] #STAY HOME
Nire
А пучарм на что ругается?
unresolved reference в installed apps а так же на иклюд в urls
источник

R

Robert B. Garza in Django [ru] #STAY HOME
источник

N

Nire in Django [ru] #STAY HOME
Ну по отношению к менедж пу они же лежат под аппсами
источник

N

Nire in Django [ru] #STAY HOME
Хотя тут сложее, ага
источник

R

Robert B. Garza in Django [ru] #STAY HOME
Nire
Хотя тут сложее, ага
угу, оно работает, но пучарм ругается почему-то, когда без apps делал, все было нормально…
apps.articles тоже не помогает
источник

N

Nire in Django [ru] #STAY HOME
Я в Ютубе когда-то гайд видел по такой архитектуре, но сейчас не скажу как ее настроить, сорри
источник

A

Alexey in Django [ru] #STAY HOME
Всем привет! Подскажите пожалуйста как использовать различные ништячковые штуки django orm (select_related, cached_property, with, кэширование,F,Q запросы), и где их конретно прописывать - в моделях, вьюхах или сразу на html странице?
источник

N

Nire in Django [ru] #STAY HOME
Alexey
Всем привет! Подскажите пожалуйста как использовать различные ништячковые штуки django orm (select_related, cached_property, with, кэширование,F,Q запросы), и где их конретно прописывать - в моделях, вьюхах или сразу на html странице?
Доку смотри на офф сайте
источник

N

Nire in Django [ru] #STAY HOME
Там понятно написано
источник

R

Robert B. Garza in Django [ru] #STAY HOME
Тогда забьем болт на это, раз работает
источник

С

Сергей in Django [ru] #STAY HOME
Всем привет. Помогите с запросом! Хочу взять для каждой компании (Company) список сайтов, у которых домена сайтов (Site) не находятся в списке забалокированных для этой компании (BlockedSite).
comps = Company.objects.prefetch_related(
   Prefetch(
       'sites',
       queryset=Site.objects.exclude(
           domain__in=SubQuery(
               BlockedSite.objects.filter(
                   company=OuterRef('pk')
               ).values_list('domain', flat=True)
           )
       ),
       to_attr='allow_sites'
   )
)
источник

С

Сергей in Django [ru] #STAY HOME
Результат получается странным: исключается только 1 сайт и только из первой компании
Что не так в запросе?
источник

С

Сергей in Django [ru] #STAY HOME
Решить эту проблему смог так:
comps = Company.objects.prefetch_related(
   Prefetch(
       'sites',
       queryset=Site.objects.exclude(
           domain__in=SubQuery(
               BlockedSite.objects.filter(
                   company=OuterRef('company_id')
               ).values_list('domain', flat=True)
           )
       ),
       to_attr='allow_sites'
   )
)


Сменив company=OuterRef('company_id')
Я правильно понимаю, что OuterRef в данном контексте ссылается именно на уровень Site.objects.exclude к Site ?
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
Сергей
Всем привет. Помогите с запросом! Хочу взять для каждой компании (Company) список сайтов, у которых домена сайтов (Site) не находятся в списке забалокированных для этой компании (BlockedSite).
comps = Company.objects.prefetch_related(
   Prefetch(
       'sites',
       queryset=Site.objects.exclude(
           domain__in=SubQuery(
               BlockedSite.objects.filter(
                   company=OuterRef('pk')
               ).values_list('domain', flat=True)
           )
       ),
       to_attr='allow_sites'
   )
)
эм, а зачем вообще две модели? в site сделать буленфилд - blocked и фильтровать по нему
источник