• Django: изменение ManyToManyField в методе save()?

    meteozond
    @meteozond Автор вопроса
    при изменении из админки метод отрабатывает, но потом его результат затирается
  • Django: изменение ManyToManyField в методе save()?

    meteozond
    @meteozond Автор вопроса
    def save(self, force_insert=False, force_update=False, using=None:
        matches = SYMBOL_PARSER.finditer(self.body)
        symbols = [match.groups()[0] for match in matches]
        self.indicators.clear()
        for symbol in Indicator.objects.filter(symbol__in=symbols):
            self.indicators.add(symbol)
        super(Formula, self).save(force_insert=force_insert, force_update=force_update, using=using)
  • Django: изменение ManyToManyField в методе save()?

    meteozond
    @meteozond Автор вопроса
    в коде ничего сверхественного:
    1. Парсим строчку введенну пользователем
    2. Находим записи соотвествующие найденному
    3. Добавляем их в связь
    4. Сохраняем
    * Это пример для изменения, при добавлении, естественно, выдаст ошибку.
    def save(self, force_insert=False, force_update=False, using=None:
    matches = SYMBOL_PARSER.finditer(self.body)
    symbols = [match.groups()[0] for match in matches]
    self.indicators.clear()
    for symbol in Indicator.objects.filter(symbol__in=symbols):
    self.indicators.add(symbol)
    super(Formula, self).save(force_insert=force_insert, force_update=force_update, using=using)
  • Что спрашивают на собеседовании в Яндекс?

    meteozond
    @meteozond
    Нет, стажировку не предложили, видимо много ЗП запросил для стажера (надо думать, с 8-то годами опыта за горбом). Прислали письмо: оценили, посмеялись (шутка) — будем иметь вас ввиду. Знакомого после такого же письма через какое-то время взяли (правда он на сисадмина просился). Складывается впечатление, что это психологическая тактика — задавить авторитетом, унизить, посмотреть как выкрутится (обряд инициации?). Когда уходил — в лифте сопровождающий не сводил с меня глаз, с сочувствием (показалось?) наблюдая за моим явно бледным видом. В конце спросил — ну как?

    Про банерокрутилку. Есть массив, размер которого менять нельзя, надо выдать из него случайные значения, что бы не повторялись. Я в жж ответ писал. Красивое конечно решение.

    В догонку. К этому собеседованию надо готовиться, как к экзамену, заранее (пролистать справчник, книжку), некотоыре вещи их интересуют чисто энциклопедические, на мой обиженный взгляд (Как работает словарь, есть ли питоне классические массивы) — можно на ходу додумать, но нужно знать.

    Никто не представился, ко мне по имени не обращались. С ты на вы сбивались и обратно. Кое-кто отмечал, что они не идут на диалог. Не совсем так, но на вопросы стараются не отвечать (кроме уточняющих разве что), диалоги как бы спохватываясь обрывают. В основном, их вопрос — твой ответ.
  • Как избавиться от повторяющихся join'ов при пересекающихся ForeignKey в Django?

    meteozond
    @meteozond Автор вопроса
    Индексы на внешние ключи автоматом сгенерились, EXPLAIN их показал.
    В том то и дело что file один и тот же и другого способа сгруппировать объекты нет. Это так сказать разные воплощения одного объекта. То как видит файл юзер, и то, где он находится реально.
  • Как избавиться от повторяющихся join'ов при пересекающихся ForeignKey в Django?

    meteozond
    @meteozond Автор вопроса
    Это сильно упрощенный пример. На одной таблице 2 подобных повтора в запросе на большом объеме данных вызывают дикие тормоза.
  • Как избавиться от повторяющихся join'ов при пересекающихся ForeignKey в Django?

    meteozond
    @meteozond Автор вопроса
    Доп связь -> доп нагрузка -> доп время выполнения. В admin.py никак не задать select_related('бла-бла')