В смысле «готов оплачивать время обдумывания»??? Нам платят именно за то, что мы думаем. Хочется больше строк кода — пускай берут машинистку, у неё это лучше получается.
По-моему, я начал Вас понимать… Да, если есть несколько приложений, которые добавляют свои атрибуты к некой базовой модели, то переопределять её save не вариант — тут уже сигналами придётся обходиться. Спасибо за пример.
Править исходники Django — да ни в жизнь, просто добавить метод в модель:
def save(self, *args, **kwargs):
is_created = self.pk is None
super(BaseModel, self).save(*args, **kwargs)
if is_created:
one_to_one_model.objects.create(<some params>)
ну, как-то так… Преимущество я вижу в том, что все манипуляции с зависимой моделью расположены внутри базовой, т.е. ближе к месту, где он реально используется.
В чём преимущество использования сигналов перед переопределением метода save? Можно ли как-нибудь в самом описании поля указать чтобы связная модель всегда создавалась?
А нет практики отказа от доработок? Типа «ТЗ должно быть согласовано и принято до 15.10.2016. Все дальнейшие доработки должны быть предложены в Приложениях. Исполнитель вправе отказаться от выполнения доработок или принять их, согласовав увеличение сроков и стоимости работ». Мне кажется, что ТЗ это такая штука, которую нельзя вот так просто взять и написать. То есть дополнения будут в любом случае, а сроки-то фиксированы.
Спасибо за интересный обзор. Сам слог и стиль очень понравился, но этого мало чтобы убедить меня потратить 9000 руб на клавиатуру. Моя Mitsumi Classic служит уже пять лет и ломаться не собирается — вот кто настоящая рабочая лошадка.
Иногда приходится под несколькими аккаунтами одновременно сидеть (админ, манагер и пользователь) при разработке сайта. Инкогнито спасает, но местами бывает неудобно. Как вариант — один браузер для работы, второй для личного использования.
Про игры не скажу, но свои программы мой отец именно таким образом и защищал. Позднее нечто похожее для дисков было — определённая последовательность битов давала при копировании дорожку из нулей. В итоге при копировании дисковод не смог прочитать это место.Сам же файл не использовался,
Как же надоели такие статьи! Человек работал 10 лет с ООП, но так и не научился его готовить? И вместо того чтобы понять когда что использовать он предлагает всё переписать на ФП. Набьёт шишек там и напишет точно такую же обличительную статью про ФП. Прям круговорот какой-то…
ну, как-то так… Преимущество я вижу в том, что все манипуляции с зависимой моделью расположены внутри базовой, т.е. ближе к месту, где он реально используется.