Size: a a a

Django [ru] #STAY HOME

2020 August 17

i

i.mntst in Django [ru] #STAY HOME
Dan Tyan
отдельная модель со своим набором поле
с FK к юзеру
class Career(models.Model):
   name = models.CharField(verbose_name='Карьера', max_length=100)
   def __str__(self):
       return self.name


class Education(models.Model):
   name = models.CharField(verbose_name='Образование', max_length=100)
   def __str__(self):
       return self.name



class Teacher(User):
   career = models.ForeignKey(Career, verbose_name='Карьера', on_delete=models.DO_NOTHING, blank=True)
   education = models.ForeignKey(Education, verbose_name='Образование', on_delete=models.DO_NOTHING, blank=True)
источник

i

i.mntst in Django [ru] #STAY HOME
Правильно ли я сделал вот так ?
источник

i

i.mntst in Django [ru] #STAY HOME
Ребята есть ли у кого то пример приложения для университета можно и с книги на английском или видео либо с гитхаба чтобы я мог смотреть туда спасибо еще раз)
источник

AS

Alexander Shakhmatov in Django [ru] #STAY HOME
С do_nothing надо ещё null=True
источник

DT

Dan Tyan in Django [ru] #STAY HOME
i.mntst
Правильно ли я сделал вот так ?
у учителя же несколлько образований ?
источник

i

i.mntst in Django [ru] #STAY HOME
Dan Tyan
у учителя же несколлько образований ?
да
источник

i

i.mntst in Django [ru] #STAY HOME
Alexander Shakhmatov
С do_nothing надо ещё null=True
а можно узнать почему ?)
источник

DT

Dan Tyan in Django [ru] #STAY HOME
тогда

class Education(models.Model):
   name = models.CharField(verbose_name='Образование', max_length=100)
   user = models.FK(Teacher)
источник

i

i.mntst in Django [ru] #STAY HOME
Dan Tyan
тогда

class Education(models.Model):
   name = models.CharField(verbose_name='Образование', max_length=100)
   user = models.FK(Teacher)
никогда не встречал такое, спасибо я пойду посмотрю я думал прямо наоборот надо у меня получается много хлама там еще ))
источник

DT

Dan Tyan in Django [ru] #STAY HOME
i.mntst
class Career(models.Model):
   name = models.CharField(verbose_name='Карьера', max_length=100)
   def __str__(self):
       return self.name


class Education(models.Model):
   name = models.CharField(verbose_name='Образование', max_length=100)
   def __str__(self):
       return self.name



class Teacher(User):
   career = models.ForeignKey(Career, verbose_name='Карьера', on_delete=models.DO_NOTHING, blank=True)
   education = models.ForeignKey(Education, verbose_name='Образование', on_delete=models.DO_NOTHING, blank=True)
on_delete=models.DO_NOTHING желательно не использовать
должен понимать зачем именно это
источник

i

i.mntst in Django [ru] #STAY HOME
Dan Tyan
on_delete=models.DO_NOTHING желательно не использовать
должен понимать зачем именно это
он ругался мне что без него нельзя вот я и сказал чтобы тупо ничего не делал при удалении ))
источник

i

i.mntst in Django [ru] #STAY HOME
спасибо большое щас по коду буду гуглить чтобы понять что к чему))
источник

DT

Dan Tyan in Django [ru] #STAY HOME
i.mntst
он ругался мне что без него нельзя вот я и сказал чтобы тупо ничего не делал при удалении ))
у тебя нарушается связь
и всегда надо будет проверять
что поле заполнено
И что запись есть
источник

DT

Dan Tyan in Django [ru] #STAY HOME
зачем тебе сохранять образование если юзера удалишь ?
источник

i

i.mntst in Django [ru] #STAY HOME
Dan Tyan
у тебя нарушается связь
и всегда надо будет проверять
что поле заполнено
И что запись есть
тогда его можно просто убрать ? но уже сделав так как ты показал ? я просто думал что в модели Teacher нужно указывать эту связь
источник

i

i.mntst in Django [ru] #STAY HOME
Dan Tyan
зачем тебе сохранять образование если юзера удалишь ?
да надо было cascade поставить
источник

DT

Dan Tyan in Django [ru] #STAY HOME
i.mntst
да надо было cascade поставить
да
источник

JT

James Town in Django [ru] #STAY HOME
Нужна помощь.

Есть две модели:

category и post

выглядят примерно так:

Category:
slug
name
description
тут рендер вьюхи с html файлом

Post:
slug
name
Image
category - FK до модели Category
и тут свой рендер вьюхи с html файлом

Как мне из под вьюхи для вывода Category получить количество Post, связанных с данной Category ?
источник

JT

James Town in Django [ru] #STAY HOME
Я гуглил про агрегацию, но не осилил (annotate и прочие)
источник

JT

James Town in Django [ru] #STAY HOME
Пробовал так:

countposts = post.objects.annotate(num_posts=Count('category'))
а в html вывожу countposts.num_posts, но выводятся нули
источник