Size: a a a

Django [ru] #STAY HOME

2020 August 30

BK

Boris Krutskih in Django [ru] #STAY HOME
Не выходи из комнаты.
Я не понимаю, зачем вообще тут отдельная таблица.
где именно?
источник

Н

Не выходи из комнаты... in Django [ru] #STAY HOME
ROLE_CHOICES = (
       ('Client', 'Client'),
       ('Specialist', 'Specialist'),
   )
role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)

Просто добавь это поле юзерам и убери у них user_role
источник

BK

Boris Krutskih in Django [ru] #STAY HOME
Не выходи из комнаты.
ROLE_CHOICES = (
       ('Client', 'Client'),
       ('Specialist', 'Specialist'),
   )
role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)

Просто добавь это поле юзерам и убери у них user_role
таким образом?
ROLE_CHOICES = (
   ('Client', 'Client'),
   ('Specialist', 'Specialist'),
)


class PhoneModel(models.Model):
   phone = models.CharField(validators=[phone_regex], max_length=13, blank=True)
   is_verified = models.BooleanField(blank=False, default=False)
   counter = models.IntegerField(default=0, blank=False)

   def __str__(self):
       return f'{self.phone}'


class ClientUser(AbstractBaseUser):
   user_role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)
   phone = models.OneToOneField(PhoneModel, on_delete=models.CASCADE)


class SpecialistUser(AbstractBaseUser):
   user_role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)
   phone = models.OneToOneField(PhoneModel, on_delete=models.CASCADE)
источник

Н

Не выходи из комнаты... in Django [ru] #STAY HOME
Boris Krutskih
таким образом?
ROLE_CHOICES = (
   ('Client', 'Client'),
   ('Specialist', 'Specialist'),
)


class PhoneModel(models.Model):
   phone = models.CharField(validators=[phone_regex], max_length=13, blank=True)
   is_verified = models.BooleanField(blank=False, default=False)
   counter = models.IntegerField(default=0, blank=False)

   def __str__(self):
       return f'{self.phone}'


class ClientUser(AbstractBaseUser):
   user_role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)
   phone = models.OneToOneField(PhoneModel, on_delete=models.CASCADE)


class SpecialistUser(AbstractBaseUser):
   user_role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)
   phone = models.OneToOneField(PhoneModel, on_delete=models.CASCADE)
Да.
источник

BK

Boris Krutskih in Django [ru] #STAY HOME
Получается при регистрации при выборе ролей два отдельных запроса будет?
источник

Н

Не выходи из комнаты... in Django [ru] #STAY HOME
Boris Krutskih
Получается при регистрации при выборе ролей два отдельных запроса будет?
Понятия не имею.
источник

BK

Boris Krutskih in Django [ru] #STAY HOME
https://gist.github.com/boriskrutskih/eb9a6ef0112cbd1763f1637ac4575ec8
В чем может быть дело при попытке создания нового пользователя?
Пытаюсь разобраться но чёт немогу понять что не так делаю
источник

BK

Boris Krutskih in Django [ru] #STAY HOME
Уже подумываю избавиться от класса PhoneModel, потому что такое чувство что он мне проблемы и создаёт
источник

Н

Не выходи из комнаты... in Django [ru] #STAY HOME
Boris Krutskih
https://gist.github.com/boriskrutskih/eb9a6ef0112cbd1763f1637ac4575ec8
В чем может быть дело при попытке создания нового пользователя?
Пытаюсь разобраться но чёт немогу понять что не так делаю
Нужно передать pk телефона
источник

Н

Не выходи из комнаты... in Django [ru] #STAY HOME
А ты передаешь номер его
источник

BK

Boris Krutskih in Django [ru] #STAY HOME
Не выходи из комнаты.
А ты передаешь номер его
Борода тогда немного получается, а не лучше в таком случае взять поля из phoneModel и перенести в роли?
class PhoneModel(models.Model):
   phone = models.CharField(validators=[phone_regex], max_length=13, blank=True)
   is_verified = models.BooleanField(blank=False, default=False)
   counter = models.IntegerField(default=0, blank=False)

   def __str__(self):
       return f'{self.phone}'


class ClientUser(AbstractBaseUser):
   role = models.CharField(choices=ROLE_CHOICES, default=None, max_length=15)
   phone = models.OneToOneField(PhoneModel, on_delete=models.CASCADE, related_name='phone_id', primary_key=True)

   full_name = models.CharField(max_length=255)
   email = models.EmailField(unique=True)
   country = models.CharField(max_length=255, default='Украина')
   region = models.CharField(max_length=255)
   address = models.CharField(max_length=255)
   house_num = models.CharField(max_length=255)
   avatar = models.ImageField()

   password = None

   USERNAME_FIELD = 'phone'
источник

BK

Boris Krutskih in Django [ru] #STAY HOME
и разделить эндпоинты на роли Client и Specialist
источник

R

Roomboy in Django [ru] #STAY HOME
Сейчас в гайде увидел что импортируют модуль не в начале файла а там где он пригодится, на сколько это правильно?
источник

DT

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

R

Roomboy in Django [ru] #STAY HOME
Понял, буду в  начале импортировать
источник

AA

Akim Abdulaev in Django [ru] #STAY HOME
Всем привет. Каким образом можно сделать корзину с покупками без регистрации в инет магазине на django rest? Слышал, что это можно сделать на фронте с использованием localstorage, но мне хотелось бы увидеть ещё варианты
источник

a

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

MB

Maxim Burov in Django [ru] #STAY HOME
Celery
источник

a

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

vc

vadim chin in Django [ru] #STAY HOME
Akim Abdulaev
Всем привет. Каким образом можно сделать корзину с покупками без регистрации в инет магазине на django rest? Слышал, что это можно сделать на фронте с использованием localstorage, но мне хотелось бы увидеть ещё варианты
в модели поле сессии и собственно инфа о корзине. это данные для аналитики и всяких промо, если говорим про нормальный магазин
источник