@spbpython

Страница 760 из 785
Danil
28.08.2018
08:55:46
https://docs.djangoproject.com/en/2.1/ref/contrib/postgres/fields/

Александр
28.08.2018
08:56:36
суть понял спасибо, дальше разгребу

Google
Serge
28.08.2018
11:12:49
id=1 он возьмёт запись с id (pk) 1, если её нет, то пустой queryset
Мне кажется там запрос к action_problem должен строиться и будет норм.

Alex
28.08.2018
12:23:03
а можно как-то pipу указать проксю чтобы он ее каждый раз юзал ?

Andrey
28.08.2018
12:24:16
можно pip.conf в virtualenv положить, там флаги указать

Alex
28.08.2018
12:24:30
ага уже нашел спасибо

Ivan
28.08.2018
12:41:27
всем привет! подскажите, пожалуйста по celery и базе данных postgresql. на данный момент сделано так: @app.task def fetch_balance(exchange=None, api_key=None, api_secret=None, options=None) -> str: conn = psycopg2.connect("dbname={name} user={user} password={password} host=localhost".format( name=SETTING.get("db_name"), user=SETTING.get("db_user"), password=SETTING.get("db_pswd") )) cur = conn.cursor() То есть при появлении задачи будет производиться подключение к БД и в конце задачи закрывается cur и conn. Чувствую, что это очент плохо. Подскажите, как можно лучше сделать? Я пробовал так - вся логика\функции\команды БД и подключение к БД один раз вынес в db.py, и в файле tasks.py просто сделал import db. Но проблема в том, что после авполнения первой задачи происходит ошибка БД - соединение закрыто... Буду рад подсказкам. Спасибо.

amureki
28.08.2018
13:43:48
У нас есть группа для джанго вопросов, если что Могу в личку кинуть, не помню как @lig11 относится к рекламе схожих по тематике чатов :)

Некто
28.08.2018
13:59:16
Ты можешь бросить трейс?

Некто
28.08.2018
14:02:09
А где создавать коннект?
Я не про создание коннекта, я про эти сеттинги в таске, вынести в отдельный класс/метод что больше по душе и его уже вызвать внутри таски

Это на суть не влияет если ты об этом

Google
Некто
28.08.2018
14:03:35
Просто как правило эти вещи реюзабельны и не хранятся в какой-то определённой таске

Serge
28.08.2018
15:23:55
А... Я подумал о том, что переиспользование коннекта довольно проблематично
А я подумал, что в доке постресовского драйвера есть пример как использовать connection pool

tardigrade
28.08.2018
18:56:01
Zdrastvuyte a=[1,[2,3]] b=a[:] a[0]=3 a[1][1]=5 print(b) Pocemu otvet [1,[2,5]], a ne [3,[2,5]?

Stanislav
28.08.2018
19:02:30
Zdrastvuyte a=[1,[2,3]] b=a[:] a[0]=3 a[1][1]=5 print(b) Pocemu otvet [1,[2,5]], a ne [3,[2,5]?
Потому что при копии в b = a[:] копируются только объекты, лежащие непосредственно в списке, т.е. 1 и список [2,3]. Что означает, что в b будет лежать та же единица и тот же список [2,3], что и в a. При этом то, что единица та же, ничего не означает, т.к. при присваивании a[0] = 3 первый элемент списка a указывает теперь на 3, а b продолжает указывать на 1. А вот изменение списка [2,3] ясное дело, затрагивает и a и b.

Ты же вряд ли будешь спрашивать, почему при a = 3; b = a; a = 1 в b будет 3, а не 1. А это абсолютно одно и то же.

tardigrade
28.08.2018
19:31:35
Ты же вряд ли будешь спрашивать, почему при a = 3; b = a; a = 1 в b будет 3, а не 1. А это абсолютно одно и то же.
Ya tak ponimayu shto nesmotrya b kopiruyet a, no izmeneniyi tolko deystvuyet na "perviy sloy" spiska, to yest spiska v spiske. Ya googlil, i nashol shto eto "shallow copy of the list", shto oznacayet poverxnostnaya kopirovaniya. Pravilno ponimayu?

Марат
28.08.2018
19:33:48


Serge
29.08.2018
10:59:25
Приветствуем, друзья! В этот четверг мы закрываем летний дринкап сезон - https://www.meetup.com/spbpython/events/zfnxdpyxlbnc/

Ilia
29.08.2018
21:39:53
И чего, много выпили?

Maxim
30.08.2018
07:11:38
Сегодня только будет

Danil
30.08.2018
07:35:26
И чего, много выпили?
Да, сезон прошел крайне весело, даже запили чатик про здоровый образ жизни ...

Danil
30.08.2018
07:36:40
оговорка по Фрейду?)
нет, что ты, всё продумано )

Ruslan
30.08.2018
07:41:05
И даже сорганизовали хакатон

Hmirin
30.08.2018
08:37:33
Глупый вопрос, но все же интересно. Django ORM вообще юзают, и на что она способна на практике?

Ruslan
30.08.2018
08:39:40
Я использую. Способна на любые твои адекватные затеи. Сложные запросы, аггрегации - все это возможно. Правда нужно научиться. Были первое время трудности с пониманием conditional expressions, но за пару вечеров прошло

Google
Vitali K.
30.08.2018
08:41:48
Мы используем в нагружённом данными проекте

Denis
30.08.2018
08:44:04
Тоже юзаем, да

Марат
30.08.2018
08:47:21
+

amureki
30.08.2018
08:49:05
Глупый вопрос, но все же интересно. Django ORM вообще юзают, и на что она способна на практике?
Она очень хороша для базовых и средней сложности операций - то есть обычно покрывает 90% потребностей среднего проекта Плюсы - с ней легко работать, легко ревьюить, тестировать и поддерживать Просто нужны не забывать о некоторых нюансах вроде select_related и прочих Как только видится боттлек запросе оформленном Django ORM, переходим на raw SQL и делаем это лучше (но, соответственно, такое становится тяжелее поддерживать, тестировать и обновлять)

Michail
30.08.2018
08:56:27
Vitali K.
30.08.2018
09:06:24
На сколько нагруженном?
Все относительно ;) на таблицах с десятками млн записей в OLAP сценариях

Кастомизации есть: COPY для загрузки данных, секционирование под капотом

Нагружённого OLTP нету

Умеем транслировать формулы из аналитического представления в SQL через ORM. Оператор может написать в админке eCPI = budget_spend / installs и это превратиться в sql через Django. Выражения могут быть сложнее и со скобками

Совпадение?)

Совпадение?)
@aleister_atreides Там Егор просит кое-что срочно сделать. Глянь плиз ?

Sergey
30.08.2018
10:39:34
всем привет !!! есть проблема в data может прийти не один PUSH, а сразу несколько, и их все нужно обработать! по два обработка проходит норм а при всех сразу обрабатывается одно https://pastebin.com/n332SiX8

Марат
30.08.2018
10:43:50
А каким образом обработка по два проходит норм? По коду не понял. Они по два приходят с какой-то задержкой?

Valery
30.08.2018
10:56:55
Ты очень неправильно работаешь с TCP сокетом. recv не даёт никаких гарантий по поводу того, сколько данных ты получишь из сокета, BUFF_SIZE - это только верхний предел, ты можешь получить меньше. Правильный подход - читать из сокета, складывать в буфер (например, строку: buffer = buffer + s.recv(BUFFER_SIZE)). Когда в буфере наберётся достаточно данных, пытаться парсить её на предмет комманд.

Roman
30.08.2018
10:57:37
Простите, что не по теме, но почему вы из всех знаков пунктуации используете только восклицательный знак?

Valery
30.08.2018
10:58:25
Спасибо попробую так!!!
А ещё лучше таки попробовать более высокоуровневые протоколы, которые умеют сами разбивать стрим на отдельные сообщения.

Google
Valery
30.08.2018
10:59:30
Напимер?
Зависит от. Кто будет слать эти сообщения?

всем привет !!! есть проблема в data может прийти не один PUSH, а сразу несколько, и их все нужно обработать! по два обработка проходит норм а при всех сразу обрабатывается одно https://pastebin.com/n332SiX8
Кстати, ещё одна мелкая придирка. time.sleep можно не делать. recv блокирует поток и ждёт сообщения из сокета. Соответственно, если с той стороны ничего не приходит, ожидание будет висеть пока соединение не закроется (или пока не случится таймаут, см. https://docs.python.org/3/library/socket.html#socket.socket.settimeout). Закрытие соединения обозначается как получение из сокета пустого сообщения.

Valery
30.08.2018
11:14:04
Это шлет устройство Модуль IO16 Модуль цифровых входов/выходов 16-ти канальный
Что-то не гуглится такой. Но, если это железо, то выбора, скорее всего, нет. Тогда остаётся только страдать, ага)

Admin
ERROR: S client not available

Valery
30.08.2018
11:25:22
http://avp-electro.com/pdf/Module%20IO16_A%20(IM).pdf
В спеке описан ещё протокол modbus, на modbus гуглится полторы готовых либы для пайтона.

Serge
30.08.2018
11:41:32
Глупый вопрос, но все же интересно. Django ORM вообще юзают, и на что она способна на практике?
да, используют. как любой другой инструмент, берем и делаем, пока устраивает. когда перестает устраивать, решаем что делать дальше. в подавляющем большинстве случаев оно устраивает. реальных выигрышей у того же SQLAlchemy осталось пренебрежительно мало.

Марат
30.08.2018
11:43:52
Когда работал над проектом на django13, вот там была боль. Там реально многих вещей не хватало.

Serge
30.08.2018
11:44:34
Alex
30.08.2018
11:44:40
Да и щас не все прекрасно

Sergey
30.08.2018
11:46:26
CBOR :)
Непонял? что это значит?

Руслан
30.08.2018
14:25:05
Подскажите какими навыками должен обладать junior python

Ruslan
30.08.2018
14:32:06
Понимать базовые принципы программирования: ООП, DRY, KISS, YAGNI, знаком с синтаксисом python, стандартом pep8, остальное зависит от компании

Google
Руслан
30.08.2018
15:22:42
Maxim
30.08.2018
15:28:09
Да
- Структуры данных python и работа с ними - Модель OSI (в википедии глянь, ты должен знать всё что выше сетевого уровня, а конкретно TCP, UDP, HTTP) - Стандарты REST, JSON-RPC, XML-RPC - Будет круто если знаешь разницу между объектами и классами - Смотри задачки с собеседований - Напиши резюме (я писал всё, чем занимался, когда познакомился с компьютером, как пришел к python, почему я к нему пришел и т.д.) - Будь хорошим человеком, всё-таки встречают по одёжке, а провожают по уму

pycharm подсказывает

еще базовую работу с Linux

забыл дописать

я как-то так устраивался на джуна

Maxim
30.08.2018
15:29:57
программисты...

ворд вам тоже орфографию подсказывает, видимо?

Maxim
30.08.2018
15:30:49
да вы чо
мне очень жаль, что ты потратил время на изучение пепа, но сегодня за тебя всё делает IDE

Maxim
30.08.2018
15:33:00
мне очень жаль, что ты потратил время на изучение пепа, но сегодня за тебя всё делает IDE
а за то, что я потратил время на изучение норм русского языка, тебе меня не жалко?

Maxim
30.08.2018
15:33:05
конкретно про OSI у меня не спрашивали, я сам всё рассказывал

а за то, что я потратил время на изучение норм русского языка, тебе меня не жалко?
прости, меня не интересует беседа с тобой, будет круто, если каждый останется при своём мнении

Страница 760 из 785