
LighteR
19.03.2019
14:11:34

Tishka17
19.03.2019
14:13:23

LighteR
19.03.2019
14:14:35

Tishka17
19.03.2019
14:14:58
и потом поменять и консьюмеров если надо

Google

Tishka17
19.03.2019
14:15:48
кстати, а алхимия же любые изменения в объекте пишет в БД, да?
я могу как-то выключить это, чтобы явно надо было говорить типа “вот этот объект сохрани”?

LighteR
19.03.2019
14:17:01
Меня тоже смущают orm-сигналы. С одной стороны это реализация pub/sub, но с другой все это части одной атомарной операции

Tishka17
19.03.2019
14:17:29
а с третьей - неявная бизнелогика


f1nnix
19.03.2019
14:24:10
Есть фласковская ручка для POST-запроса. Ей в body может быть передан один из двух параметров — username или email. Я использую werkzeug-овский парсер. Мне нужно найти пользователя в БД по полученным в body данным: или по мылу, или по email. Если ничего не найдено, надо получить None.
post_args = {
'email': fields.String(missing=None),
'username': fields.String(missing=None),
}
Любой аргумент из парсера может быть None. И у пользователей может не быть email или username (но не обоих сразу). Поэтому я не могу сразу передать аргументы в Алхимию, а собираю словарь аргументов для запроса. Если этого не сделать, мы получим первого юзера, где email или username отсутствет, а не то, что запрошено на самом деле:
# prevent equal-None filter query
user, query_kwars, = None, {}
email, username = args.get('email'), args.get('username')
# prepare request query
if email:
query_kwars['email'] = email
elif username:
query_kwars['username'] = username
if query_kwars: # if at least one condition exists
user = db.session.query(User) \
.filter_by(**query_kwars) \
.one_or_none()
if user is None: # user was not populated with parsed conditions
....
Как сделать лаконичнее?
#sqlalchemy #werkzeug


Влад
19.03.2019
14:29:27
всем привет, нужно помощь с скриптом на баше
while read flname dob ssn tel status
do
echo "Name : $flname"
echo "DOB : $dob"
echo "SSN : $ssn"
echo "Telephone : $tel"
echo "Status : $status"
done < $INPUT
есть такой скрипт, в нем первая переменная имеет вид: name@domain, нужно как то разделить его что бы было отдельно name и domain переменны и дальше их использовать в цикле, как это сделать?
как это реализовано на perl
while (<>) {
chomp;
my ($email,$first,$last,$maildistr) = split(/\,/, $_, 4);
my ($uid, $domain) = split(/@/, $email, 2);
}


Tishka17
19.03.2019
14:30:22
Есть фласковская ручка для POST-запроса. Ей в body может быть передан один из двух параметров — username или email. Я использую werkzeug-овский парсер. Мне нужно найти пользователя в БД по полученным в body данным: или по мылу, или по email. Если ничего не найдено, надо получить None.
post_args = {
'email': fields.String(missing=None),
'username': fields.String(missing=None),
}
Любой аргумент из парсера может быть None. И у пользователей может не быть email или username (но не обоих сразу). Поэтому я не могу сразу передать аргументы в Алхимию, а собираю словарь аргументов для запроса. Если этого не сделать, мы получим первого юзера, где email или username отсутствет, а не то, что запрошено на самом деле:
# prevent equal-None filter query
user, query_kwars, = None, {}
email, username = args.get('email'), args.get('username')
# prepare request query
if email:
query_kwars['email'] = email
elif username:
query_kwars['username'] = username
if query_kwars: # if at least one condition exists
user = db.session.query(User) \
.filter_by(**query_kwars) \
.one_or_none()
if user is None: # user was not populated with parsed conditions
....
Как сделать лаконичнее?
#sqlalchemy #werkzeug
1) query_kwars = {k:args[v] for k in (“email”, “username”) if k in args }
2) как твой, но вместо args.get + if xxx сделать if xxx in args


Влад
19.03.2019
14:31:29

Алексей
19.03.2019
14:46:02
Всем привет! Может кто-нибудь сталкивался с такой проблемой. Делаю запросы с помощью sqlalchemy к базе PostgreSQL и datetime возвращается без таймзоны (UTC). Если делаю тот же запрос с помощью psycopg2, то возвращается всё норм. Не могу нигде найти понятного способа для коннекта sqlalchemy указать таймзону
Нашёл вот такой способ на stackoverflow
engine = sqlalchemy.create_engine("...", connect_args={"options": "-c timezone=utc"})
Но sqlalchemy ругается, что аргумент options не поддерживается

Google

Artur Rakhmatulin
19.03.2019
14:49:14
а в модели алхими что прописано на это поле?

f1nnix
19.03.2019
14:52:06

Artur Rakhmatulin
19.03.2019
14:52:22

Tishka17
19.03.2019
14:52:36

Mr/Gob
19.03.2019
14:56:11
Есть список ((( list = [o,p,h] ))) как доставать попорядку слова?

Tishka17
19.03.2019
14:56:20
а скобки зачем?

Mr/Gob
19.03.2019
14:56:33
То что код
я указал

Tishka17
19.03.2019
14:56:43
кавычка обратная ;-)

Mr/Gob
19.03.2019
14:56:54
Понял
Так ка доставать от туда по порядку слова?

Tishka17
19.03.2019
14:58:17
эм, в смысле достать?
и по какому порядку? как лежать в списке?
for i in list?

Mr/Gob
19.03.2019
14:59:09
вот я хочу спросить солово одно! потом через пару минут второе
и так дальше

Михаил
19.03.2019
15:00:09
Интересно что у него за файл, настройки какие-нить?
Файл с небольшим справочником. Размер 3-15 мегабайт. Разворачивать СУБД для этого нецелесообразно, тем более есть вероятность что этим файлом придется делиться. Задача, штатными средствами языка сотворить возможность поиска по файлу и изменение информации в нем в произвольной части.

Mr/Gob
19.03.2019
15:02:23
Ладно спрошу так (Есть файл Gb.txt там слова вряд.. Как по порядку доставать по одному?)

Михаил
19.03.2019
15:03:40

Mr/Gob
19.03.2019
15:03:51
Как??

Google

Mr/Gob
19.03.2019
15:03:55
Как так сделать?

Михаил
19.03.2019
15:04:31
Посимвольно, в цикле с условием на нахождение разделителя.

Mr/Gob
19.03.2019
15:05:08
Можна пример кода?
Если не сложно

Михаил
19.03.2019
15:05:59
Пока нет, со Смарта сижу. Кодить экранной клавой изврат ещё тот...

Mr/Gob
19.03.2019
15:06:39
Вот пол гугла перерыл а найти как не могу.. Не пойму! как не пробую не работает

Stepan
19.03.2019
15:07:37

IDK
19.03.2019
15:07:37
по порядку чего?

Михаил
19.03.2019
15:08:09
Интересная задачка, завтра с дежурства приду, накидаю алгоритм.

Mr/Gob
19.03.2019
15:08:15
Баз
нал
бум
вот так

IDK
19.03.2019
15:08:29
readline()

Mr/Gob
19.03.2019
15:08:43
Подробней можна?

IDK
19.03.2019
15:09:02
погугли

Stepan
19.03.2019
15:09:32
python file iterate lines по-моему запрос вполне очевидный
Первая же ссылка

Mr/Gob
19.03.2019
15:10:19
Я понял.. Но оно либо все сразу показывает или только первую строку

Eldar
19.03.2019
15:10:26

Mr/Gob
19.03.2019
15:10:43
Угу

Vanya
19.03.2019
15:13:57

Google

Tishka17
19.03.2019
15:14:13

Vanya
19.03.2019
15:15:04

Stepan
19.03.2019
15:16:49
а перс данные просит?
Ты серьезно реплаишь сообщения 2016 года в надежде на ответ? Может лучше сформулировать новый вопрос?

Vanya
19.03.2019
15:17:25
те написать васю пупкина и оплатить виртуалкой яндекса

Mr/Gob
19.03.2019
15:21:28
""" myfile = open("test.txt", "rU") #чтение из файла
for line in myfile.xreadlines(): #построчно читаем файл и выводим на экран
print line """
Как выводить не все зразу а только по строке кодга нада?

IDK
19.03.2019
15:23:01
а когда надо?
Так то условия этому служат

Mr/Gob
19.03.2019
15:23:39
?

IDK
19.03.2019
15:24:03
if

Mr/Gob
19.03.2019
15:25:14
Блииин только понял что не так делал... извините только учусь

Nikita
19.03.2019
15:30:21
бойзы, я уже спрашивал, и мне дали хороший совет... но увы, действительность жестка
короч
суть
есть скрипт, который обращается к серваку и обрабатывает запросы
делает это он всё в цикле
но собсно проблема какая, при получении какой либо ошибки (к примеру кодировка не та), скрипт крашится
впринципе это вылавливаю и фиксю обработками ошибок
и вот это добро както надо запускать на удалённом хостинге
мне посоветовали сделать из скрипта демон/сервис, но увы, на хостинге такого низя
как запустить скрипт, что б ещё можно было б ошибки вылавливать?

Tishka17
19.03.2019
15:31:32
Что за хостинг? И как тогда на нем запускаешь всё?

Nikita
19.03.2019
15:31:58

Tishka17
19.03.2019
15:32:17
Upstart?

Nikita
19.03.2019
15:32:22

Tishka17
19.03.2019
15:32:22
:))

Google

IDK
19.03.2019
15:32:44
я в тмикс пхаю

Tishka17
19.03.2019
15:33:09
Ну вообще тот же gunicorn прекрасно рестартует воркеры

Nikita
19.03.2019
15:33:11

Tishka17
19.03.2019
15:33:18

Nikita
19.03.2019
15:34:32

Tishka17
19.03.2019
15:36:41
Так, ну у тебя же не веб приложение, да?

Nikita
19.03.2019
15:36:46
эт чё, какой-то веб-хуеб пилить? и запускать скрипт чилдом?
телеграм бот примитивный

Tishka17
19.03.2019
15:37:10
while true; app.py; done
Упадет, перезапустится

Nikita
19.03.2019
15:37:46
хм, дык если ошибка будет, сыпанётся же
а хер узнаешь почему