Size: a a a

Django [ru] #STAY HOME

2019 February 11

ВХ

Валентин Хомутенко in Django [ru] #STAY HOME
В таких местах имхо надо не выпендриваться и сделать максимально просто и понятно. Тернарный оператор не уступает в данном случае обычному if'у, но просто записан короче.
источник

A

Alex in Django [ru] #STAY HOME
Dima Boger
Интересно, в редхат тоже заменяют булевую логику на деление по модулю? 🤔
ух... а как дойдет до масок сетей считать джуну проще застрелиться да?
источник

ВХ

Валентин Хомутенко in Django [ru] #STAY HOME
А вот все остальное под впечатлением может показаться магией, которую можно неправильно сходу понять
источник

.

.tmp in Django [ru] #STAY HOME
как вы добавляете новые функции в сгенерированный models.py?
источник

.

.tmp in Django [ru] #STAY HOME
Переслано от .tmp
есть файл models.py
в нём есть допустим класс User: ...
могу ли я добавить к нему функцию из другого файла?
например создать файл models_utils.py, создать там User: ... def new_function(self, ...) ... @static def new_static_def()...
и в конце models.py импортнуть models_utils.py, чтобы вызывать у models.User.new_function(). Будет ли оно работать?
источник

DB

Dima Boger in Django [ru] #STAY HOME
Валентин Хомутенко
В таких местах имхо надо не выпендриваться и сделать максимально просто и понятно. Тернарный оператор не уступает в данном случае обычному if'у, но просто записан короче.
Нет, у него другая логика ведь
источник

ВХ

Валентин Хомутенко in Django [ru] #STAY HOME
В конкретно поставленной задаче "либо 1, либо 2"
источник

DB

Dima Boger in Django [ru] #STAY HOME
Тернарный - if-else, в оригинале if-elif
источник

ВХ

Валентин Хомутенко in Django [ru] #STAY HOME
В остальных просто if тогда
источник

A

Alex in Django [ru] #STAY HOME
.tmp
Переслано от .tmp
есть файл models.py
в нём есть допустим класс User: ...
могу ли я добавить к нему функцию из другого файла?
например создать файл models_utils.py, создать там User: ... def new_function(self, ...) ... @static def new_static_def()...
и в конце models.py импортнуть models_utils.py, чтобы вызывать у models.User.new_function(). Будет ли оно работать?
эм... ты изобретаешь миксины штоле?
источник

A

Alex in Django [ru] #STAY HOME
вообще хрень какая-то.
источник

MK

Maxim Kolesnikov in Django [ru] #STAY HOME
Представляю тогда такой вариант. Он сохраняет оригинальную логику с elif
источник

.

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

A

Alex in Django [ru] #STAY HOME
Maxim Kolesnikov
Представляю тогда такой вариант. Он сохраняет оригинальную логику с elif
неплохо, но чемпионат по запутыванию кода с этим не выиграешь.
источник

A

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

AO

Alexander Ovchinnikov 🦁 in Django [ru] #STAY HOME
нужен вариант с OOP, без OOP никак))
источник

.

.tmp in Django [ru] #STAY HOME
Alex
но зачем? что мешает описать нужную функцию в самой модели?
этот файл генерируется, я не пишу его руками
источник

A

Alex in Django [ru] #STAY HOME
.tmp
этот файл генерируется, я не пишу его руками
в django ORM есть абстрактные базовые классы моделей, возможно это тебе поможет, но для этого нужно чтобы твой генератор генерировал модели абстрактными. но вообще звучит диковато.
источник

.

.tmp in Django [ru] #STAY HOME
Alex
в django ORM есть абстрактные базовые классы моделей, возможно это тебе поможет, но для этого нужно чтобы твой генератор генерировал модели абстрактными. но вообще звучит диковато.
да я подумал что простым наследованием всё решается
источник

A

Alex in Django [ru] #STAY HOME
а ну и еще есть такая штука как прокси модели.
https://docs.djangoproject.com/en/2.1/topics/db/models/#proxy-models
источник