Size: a a a

Django [ru] #STAY HOME

2021 February 07

TC

Tom Cauf in Django [ru] #STAY HOME
Dan Tyan
только потом сюда приходят
с корявыми примерами
с вопросами почему не работает =)
Ну эт само собой :)
источник

TC

Tom Cauf in Django [ru] #STAY HOME
garrip91
Ну я в коде использую такие слова как "table". Как мне убедиться в том, что это не зарезервированное слово?
Все зарезервированные слова питона написаны в любом учебнике. У Джанго нет зарезервированных слов - там простые идентификаторы. Конфликты с ними разруливаются через области видимости и алиасы
источник

М

Максим in Django [ru] #STAY HOME
Подскажите, пожалуйста, что упустил. Все отлично работает на разработке(db.sqllite) Но не пашет на боевом (Postgres ) https://pastebin.com/embed_iframe/r5MPSn0X
источник

М

Максим in Django [ru] #STAY HOME
from django.db import connection

def ViewProduct(request, slug):
   ***********
   cross = []
   for p in Product.objects.raw("SELECT * FROM shop_product_cross WHERE from_product_id=%s", [product.id]):
       cross.append(p)
источник

V

V---V in Django [ru] #STAY HOME
Правила в закрепе же.
источник

М

Максим in Django [ru] #STAY HOME
Заранее прошу прощения, если что то нарушил. Картинку не кидаю
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Максим
from django.db import connection

def ViewProduct(request, slug):
   ***********
   cross = []
   for p in Product.objects.raw("SELECT * FROM shop_product_cross WHERE from_product_id=%s", [product.id]):
       cross.append(p)
а зачем тут raw?
источник

DT

Dan Tyan in Django [ru] #STAY HOME
и что такое priduct?
источник

М

Максим in Django [ru] #STAY HOME
А по другому не понял как выводить объекты. У Модели Продукт есть поле cross которое ManytoMany соответственно в таблице продукта нет никаких записей а создается служебная таблица просто с айдишниками. Вот придумал костыль
источник

DT

Dan Tyan in Django [ru] #STAY HOME
cross это M2M на саму себя?
источник

М

Максим in Django [ru] #STAY HOME
да
источник

М

Максим in Django [ru] #STAY HOME
cross = models.ManyToManyField('Product', related_name='+', verbose_name='Варианты', blank=True)
источник

DT

Dan Tyan in Django [ru] #STAY HOME
related_name='cross_products'
источник

DT

Dan Tyan in Django [ru] #STAY HOME
product.cross_products.all()
источник

М

Максим in Django [ru] #STAY HOME
Хм. Спасибо. Попробую.
источник

М

Максим in Django [ru] #STAY HOME
Dan Tyan
product.cross_products.all()
'ManyToManyDescriptor' object has no attribute 'all'
источник

DT

Dan Tyan in Django [ru] #STAY HOME
покажи вызов?
источник

М

Максим in Django [ru] #STAY HOME
cross = Product.cross_products.all() В шаблоне цикл {% for c in cross %} Но вызов не верный, он по идее должен еще фильтровать по ИД
источник

DT

Dan Tyan in Django [ru] #STAY HOME
нет
источник

М

Максим in Django [ru] #STAY HOME
Я просто проверить работоспособность
источник