Size: a a a

Django [ru] #STAY HOME

2020 June 21

AG

Artem Gubatenko in Django [ru] #STAY HOME
D. Ouhh
привет. у меня есть generic relations. models.ForeignKey(ContentType, on_delete=models.CASCADE). если обьект, к которому ведёт фк удаляется каскадом, этот тоже должен удалится, верно?
я думаю, тут нужно самому удалять, т.к БД не знает с какой таблицей связь. Это знает джанго
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
D. Ouhh
from django.db.models.signals import post_delete
from django.dispatch import receiver

@receiver(post_delete, sender=Comment, dispatch_uid='delete_comment_content_object')
def delete_comment_content_object(sender, instance, using, **kwargs):
   instance.content_object.delete()

типа такого?
post_delete ведь не будет работать. Объект уже удален
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
D. Ouhh
from django.db.models.signals import post_delete
from django.dispatch import receiver

@receiver(post_delete, sender=Comment, dispatch_uid='delete_comment_content_object')
def delete_comment_content_object(sender, instance, using, **kwargs):
   instance.content_object.delete()

типа такого?
pre_delete или в save() перед super()
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Artem Gubatenko
pre_delete или в save() перед super()
а, save() не отрабатывает же
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
D. Ouhh
from django.db.models.signals import post_delete
from django.dispatch import receiver

@receiver(post_delete, sender=Comment, dispatch_uid='delete_comment_content_object')
def delete_comment_content_object(sender, instance, using, **kwargs):
   instance.content_object.delete()

типа такого?
pre_save сигнал или кастомизировать queryset, метод delete()
источник

AD

Alex Dem in Django [ru] #STAY HOME
Jack
Я просто не могу понять что не так
я предполагаю, что ответ неправильно сериализирован в json и фронты его не понимают
у тебя в 39ой строке идет "двойная сериализация", кажется там надо оставить одну из сериализаций - или json respose или .serialize
источник

AD

Alex Dem in Django [ru] #STAY HOME
это сколько-нибудь релевантное предположение только в том случае если тот json что ты привел, отдает 39ая строка твоей вьюхи (я не знаю, может там из-под другого блока отдается кривой ответ, не вникал глубоко)
источник

AD

Alex Dem in Django [ru] #STAY HOME
Jack
Смотри, во вьюхе возвращаю JsonResponse
<script> let url = '{{ product.get_absolute_url }}'; </script>
Потом в html сохраняю в url ссылку ответа, вот на 2 картинке сам response
а еще у тебя safe=False стоит
источник

МП

Михаил Павлов... in Django [ru] #STAY HOME
Ildar Ⓜ️
привет, кто как разворачивает Django  на проде (gunicorn + ngnix) ? кто-то пользуется скриптами готовыми? (doker  не актуален), CI - тоже. Если коротко то задача автоматизировать деплой:
1. Установить питон
2. поставить гит
2.1 поставить ключ
2.2 спуллить репу с гита
3. Поставить все зависимости и переменные окружения (база локльная)
4. Настроить gunicorn
5. Настроить ngnix

Вот всем этим заниматься не хочется, хочеться один раз написать скрипт и в нем только менять перменные

Есть идеи?
Это называется fabric
источник

AD

Alex Dem in Django [ru] #STAY HOME
Jack
Смотри, во вьюхе возвращаю JsonResponse
<script> let url = '{{ product.get_absolute_url }}'; </script>
Потом в html сохраняю в url ссылку ответа, вот на 2 картинке сам response
попробуй c safe=True
источник

J

Jack in Django [ru] #STAY HOME
Alex Dem
попробуй c safe=True
Да, делал по примеру, выскочило несколько ошибок
И насчет того что не правильно сериализирован, думаю это вполне вероятно
источник

J

Jack in Django [ru] #STAY HOME
Обычно делают + отдельный файл serialize.py
источник

AD

Alex Dem in Django [ru] #STAY HOME
Ildar Ⓜ️
привет, кто как разворачивает Django  на проде (gunicorn + ngnix) ? кто-то пользуется скриптами готовыми? (doker  не актуален), CI - тоже. Если коротко то задача автоматизировать деплой:
1. Установить питон
2. поставить гит
2.1 поставить ключ
2.2 спуллить репу с гита
3. Поставить все зависимости и переменные окружения (база локльная)
4. Настроить gunicorn
5. Настроить ngnix

Вот всем этим заниматься не хочется, хочеться один раз написать скрипт и в нем только менять перменные

Есть идеи?
наверняка предложат что-то более высокоуровневое, но если докер не подходит, то всегда есть старый добрый bash
источник

AD

Alex Dem in Django [ru] #STAY HOME
Jack
Обычно делают + отдельный файл serialize.py
дело даже не в этом
просто JsonResponse делает json сериализацию
+ ты сам ее делаешь там же,
мне кажется, это выглядит странно и может сбоить
хотя ты пример вывода эндопоинта выглядит вроде бы вполне

кстати, есть еще предположение что по каким-то причинам на фронте не была произведена сериализация ответа сервера в json
не проверял случайно? может надо просто на фронте сделать toJson? или твоя ошибка и есть результат этой операции?
источник

N

Nire in Django [ru] #STAY HOME
Jack
Обычно делают + отдельный файл serialize.py
Ну немного по другому
источник

N

Nire in Django [ru] #STAY HOME
Ты понимаешь что такое сериализация? Как определение)?
источник

J

Jack in Django [ru] #STAY HOME
Да, преобразование объекта в текст
источник

J

Jack in Django [ru] #STAY HOME
Диссериализация наоборот
источник

N

Nire in Django [ru] #STAY HOME
Ну не совсем так, это одно из применений
источник

J

Jack in Django [ru] #STAY HOME
Ну там в разные типы можно переделать, не только в текст
источник