Tishka17
интрига года )))
>>> class A:
... b=1
...
>>> a=A()
>>> a.b
1
>>> a.__dict__
{}
Sergey
Я из-за них и велосипедю
A
A
юзал в нескольких проектах, норм работает
Tishka17
Sergey
?
На модели > 40.000 либо по 1,5 минуты выкачивает, либо вообще падает
Sergey
С 504й ошибкой
Tishka17
Tishka17
https://docs.djangoproject.com/en/2.2/ref/models/meta/
Tishka17
Tishka17
это делаешь один раз при инициализации сериализатора
Tishka17
а дальше уже geattr по именам
Sergey
Tishka17
ну
Tishka17
в чем тогда вопрос?
Sergey
так, попробую ещё раз сформулировать.
A
Artem
есть вопросик почему берется последние элемент а не первый по умолчанию из любопытства спрашиваю
def f(n, l = []):
for i in range(n):
l.append(i * i)
return l
print(f(2))
print(f(3, [0, 1]))
f.defaults = ([], [], [],)
print(f(3))
print(f.defaults)
A
Sergey
Пользователь в админке отмечает условные 57 строчек. Я их получаю в QuerySet.
Дальше я запускаю цикл по строкам QueySet*а и получаю в цикле строку этого QuerySet*a.
Дальше мне нужно в excel разложить значения строки №32 по ячейкам. Вот вопрос в том, как мне получить значения этих ячеек. Т.е. не названия полей, не сами поля как объекты, а именно значение этого field15 для строки №32.
Как-то так.
Arwi
Sergey
Всё, нашёл!
Sergey
A
👍
Sergey
оказывается можно вот так:
for instance in QuerySet:
values = instance.__dict__
Нашёл на стаке, благодаря @artemius_ua
Ещё раз спасибо большое
MRY
Всем доброго дня. Пытаюсь получить аналог статической переменной но ничего не получается.. При передачи аргумента методу в итоге переменная не меняется….
Сам код:
MRY
def aws_region(self, region):
default_region = 'us-east-1'
if region is None:
return default_region
else:
default_region = region
return default_region
Через глобальную переменную также не получается да и меня помидорами закидают за это
в джаве данный вопрос я решал через статику или get-set как более элегантно решить это в python ?
Данная конструкция не работает
default_region = 'us-east-1'
def set_aws_region(region):
default_region = region
MRY
А все нашел решение правда через глобальную переменную.
default_region = 'us-east-1'
def aws_region(region):
global default_region
if region is None:
return default_region
default_region = region
return default_region
Sergey
Можно ещё через замыкание реализовать
Sergey
Но это извращения )
Tishka17
Народ, есть идея расширить возможности писать кстомные парсеры в рамках моей либы.
Пока я родил следующий код:
https://github.com/Tishka17/dataclass_factory/blob/feature/pre_post_parse/tests/test_pre_post.py
Вопрос: что ещё может понадобиться? Например логично кроме pre_parse иметь post_parse. Но хз что к него пихать
Tishka17
Типа будет работать обычный автоматический парсер, но потом можно что-то дообработать
Tishka17
А примере - строка в словаре превращается в список в датаклассе
м_м
странно у вас вроде вечер а такая тишина.
Konstantin
Ребят, я чет недоумеваю. Когда говорят, что шарды разносят по серверам, имеют ввиду истансы, например, постгресовские, или железки?
Konstantin
Тот же самый вопрос к репликам
Tishka17
Инстансы
Konstantin
На одной железке
Tishka17
Но скорее всего и железки
Tishka17
То есть с точки зрения логики шардировпния инстансу в целом пофиг, есть ли другие инстансы на этой железке. Но для скорости это важно
Tishka17
Так же и про надёжность реплик
Tishka17
А вообще это могут быть вообще разные датацентры ;-)
Konstantin
Тогда вытекающий вопрос. Есть таблица 20млн+(и будет дальше расти как на дрожжах) строк, хочу пошардить на одной железке. Но вот не понимаю нужно реплику для каждого шарда делать или сделать одну большую реплику от жирного мастера(и надо ли вообще хранить на мастере столько данных если с них читать не будем)
Tishka17
Смысла в шарде, если он на одной железке не очень мрооо
Daniil
Для каждого шарда делать реплику
Konstantin
просто вообще хз где спрашивать такие вещи вообще
Konstantin
Konstantin
Память быстро улетит в трубу
Konstantin
Daniil
Ну и надо правильно настроить реплицирование, чтобы отставание небольшое было
Konstantin
Tishka17
Почему?
Ну а за счёт чего будет выигрыш скорости?
Konstantin
Я думал над ассинхронным реплецированием
Konstantin
Daniil
Выигрыш в скорости запросов?
Tishka17
Но для тренировки можешь конечно на одной машине и разных виртуалках
Daniil
Записи, чтения
Daniil
Если на разных машинах, то ширина канал достаточная должна быть
Konstantin
Просто основной ботлнек у меня в том, что аналитик хочет, чтобы мы из этих данных собирали новую сущность(считаем по ним), но для этого нужен запрос который берет одну строчку из одной таблицы и ищет связные с ним данные в другой(one-to-many), считает - выплевывает сущность.
Я думал сделать это статикой и по рассписанию как-то
Konstantin
Колбасить на бекенде и кидать в mongodb какую нибудь
Daniil
Можешь посмотреть в сторону Apache airflow
Daniil
Я так понял etl какой-то
Konstantin
Konstantin
Daniil
Extract transform load
Konstantin
м_м
Konstantin
м_м
электронная техника
Nikolay
В чтении много нюансов . Например можно читать асинхронно кусочками
м_м
сомневаюсь что бест практикс, игнорируются в чтение топовых решениях ПО
Nikolay
Обычный read - синхронный , но есть io_submit, который асинхронный .
Konstantin
Лан, спасибо за инфу
Tishka17
м_м
И часто ему это надо?
"стоит ли тратить время на автоматизацию", последнее время вспоминаю старое доброе "худая овчинка выделки не стоит" 😊
Konstantin