Size: a a a

Django [ru] #STAY HOME

2019 May 21

BK

Bogdan Kalashnikov in Django [ru] #STAY HOME
Dmitry
А если два запроса на один автобус, а место одно, про проверку успели пройти оба?
если глубоко копать, то надо писать constraint на уровне бд, благо их в 2 или 2.1 завезли
источник

D

Dmitry in Django [ru] #STAY HOME
Bogdan Kalashnikov
если глубоко копать, то надо писать constraint на уровне бд, благо их в 2 или 2.1 завезли
Transaction atomic же. А в валидатор его пихать такое себе
источник

MB

Muslim Beibytuly in Django [ru] #STAY HOME
Bogdan Kalashnikov
как вариант можно компромис любителям раскладывать все по полочкам: унаследовать ValidationError, кидать ее в validate и ловить в create или где оно там будет в response превращаться
А если в permissions прописать AtLeastOnePlaceIsFree?:D и какой правильный status code лучше возвращать?:)
источник

D

Dmitry in Django [ru] #STAY HOME
Muslim Beibytuly
А если в permissions прописать AtLeastOnePlaceIsFree?:D и какой правильный status code лучше возвращать?:)
Причём тут пермишен?
источник

MB

Muslim Beibytuly in Django [ru] #STAY HOME
Вроде: «в эту вьюшку можно зайти только если есть пустое место»:D
источник

D

Dmitry in Django [ru] #STAY HOME
Muslim Beibytuly
Вроде: «в эту вьюшку можно зайти только если есть пустое место»:D
Ты либо в своей вьюхе переписываешь create с transaction atomic, где в случае чего вызываешь свою валидационную ошибку, либо лезешь в модель. Так мне видится
источник

b

brestows in Django [ru] #STAY HOME
Bogdan Kalashnikov
показывай код, ванги в отпуске. сериализатор, вьюху и модель на всякий
Чуть позже,  буду за компом
источник

D

Dmitry in Django [ru] #STAY HOME
Для генерик вью есть perform_create, куда ты доп логику вроде этой можешь вставлять
источник

b

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

BK

Bogdan Kalashnikov in Django [ru] #STAY HOME
перечитал вопрос - такое лучше решить полем free_places, которое делать +=1 или -=1 на уровне бд делать. и быстрее и меньше шансов влезть по-середине. но для полной надежности надо писать redis-lock на покупку билета, чтобы не купить то, чего уже нет в базе
источник

MB

Muslim Beibytuly in Django [ru] #STAY HOME
Dmitry
Ты либо в своей вьюхе переписываешь create с transaction atomic, где в случае чего вызываешь свою валидационную ошибку, либо лезешь в модель. Так мне видится
Столько вариации, какой вариант будет наиболее pythonic way?:D
источник

KA

Kylych Asankulov in Django [ru] #STAY HOME
а статус то какой возвращать?
источник

MB

Muslim Beibytuly in Django [ru] #STAY HOME
Kylych Asankulov
а статус то какой возвращать?
422?:D
источник

KA

Kylych Asankulov in Django [ru] #STAY HOME
😁
источник

i

ikasymov in Django [ru] #STAY HOME
Bogdan Kalashnikov
перечитал вопрос - такое лучше решить полем free_places, которое делать +=1 или -=1 на уровне бд делать. и быстрее и меньше шансов влезть по-середине. но для полной надежности надо писать redis-lock на покупку билета, чтобы не купить то, чего уже нет в базе
хранить места как отдельные обьекты(записи в таблице) в базе
источник

A

Alex in Django [ru] #STAY HOME
Aquinary
Хероку для джанго мастхев?
не
источник

AO

Alexander Ovchinnikov 🦁 in Django [ru] #STAY HOME
Alex
не
А AWS?)
источник

KP

KZ Paradise in Django [ru] #STAY HOME
а aws типа бесплатный но всеравно 0.5-1$ снимают за использование)
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
Подскажите, почему зацикливается функция
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
источник