Tishka17
А ещё в винде нельзя через GUI создать папку, имя которой кончается на точку
Oleg
хотя для последнего кейса, я сходу не могу придумать хороший пример, когда это было бы проблемой
Tishka17
Oleg
Tishka17
а я и не хожу, я переписываю
Tishka17
нелюблю неявные действия
Tishka17
а тут блин в событии лазят снова в базу и что-то доделывают
Tishka17
ну тогда в том месте где инсерт и вызывалась бы доп логика
Tishka17
а тут я должен найти все места, где мог произойти инсерт / update
Tishka17
триггеры БД vs события алхимии
Oleg
Oleg
Tishka17
и потом поменять и консьюмеров если надо
Tishka17
кстати, а алхимия же любые изменения в объекте пишет в БД, да?
Tishka17
я могу как-то выключить это, чтобы явно надо было говорить типа “вот этот объект сохрани”?
Oleg
Меня тоже смущают orm-сигналы. С одной стороны это реализация pub/sub, но с другой все это части одной атомарной операции
Tishka17
а с третьей - неявная бизнелогика
Ilya
Есть фласковская ручка для 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
Влад 🇺🇦
всем привет, нужно помощь с скриптом на баше
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
Есть фласковская ручка для 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
Tishka17
Влад 🇺🇦
Алексей
Всем привет! Может кто-нибудь сталкивался с такой проблемой. Делаю запросы с помощью sqlalchemy к базе PostgreSQL и datetime возвращается без таймзоны (UTC). Если делаю тот же запрос с помощью psycopg2, то возвращается всё норм. Не могу нигде найти понятного способа для коннекта sqlalchemy указать таймзону
Алексей
Алексей
Нашёл вот такой способ на stackoverflow
engine = sqlalchemy.create_engine("...", connect_args={"options": "-c timezone=utc"})
Но sqlalchemy ругается, что аргумент options не поддерживается
Artur Rakhmatulin
а в модели алхими что прописано на это поле?
Ilya
Artur Rakhmatulin
Anonymous
Есть список ((( list = [o,p,h] ))) как доставать попорядку слова?
Tishka17
а скобки зачем?
Anonymous
То что код
Anonymous
я указал
Tishka17
кавычка обратная ;-)
Anonymous
Понял
Anonymous
Так ка доставать от туда по порядку слова?
Tishka17
эм, в смысле достать?
Tishka17
и по какому порядку? как лежать в списке?
Tishka17
for i in list?
Anonymous
вот я хочу спросить солово одно! потом через пару минут второе
Anonymous
и так дальше
Anonymous
Интересно что у него за файл, настройки какие-нить?
Файл с небольшим справочником. Размер 3-15 мегабайт. Разворачивать СУБД для этого нецелесообразно, тем более есть вероятность что этим файлом придется делиться. Задача, штатными средствами языка сотворить возможность поиска по файлу и изменение информации в нем в произвольной части.
Anonymous
Ладно спрошу так (Есть файл Gb.txt там слова вряд.. Как по порядку доставать по одному?)
Anonymous
Anonymous
Как??
Anonymous
Как так сделать?
Anonymous
Посимвольно, в цикле с условием на нахождение разделителя.
Anonymous
Можна пример кода?
Anonymous
Если не сложно
Anonymous
Пока нет, со Смарта сижу. Кодить экранной клавой изврат ещё тот...
Anonymous
Вот пол гугла перерыл а найти как не могу.. Не пойму! как не пробую не работает
Stepan
Anonymous
по порядку чего?
Anonymous
Интересная задачка, завтра с дежурства приду, накидаю алгоритм.
Anonymous
Баз
нал
бум
Anonymous
вот так
Anonymous
readline()
Anonymous
Подробней можна?
Anonymous
погугли
Stepan
python file iterate lines по-моему запрос вполне очевидный
Stepan
Первая же ссылка
Anonymous
Я понял.. Но оно либо все сразу показывает или только первую строку
Anonymous
Угу
Stepan
Ты серьезно реплаишь сообщения 2016 года в надежде на ответ? Может лучше сформулировать новый вопрос?
Anonymous
""" myfile = open("test.txt", "rU") #чтение из файла
for line in myfile.xreadlines(): #построчно читаем файл и выводим на экран
print line """
Как выводить не все зразу а только по строке кодга нада?
Anonymous
а когда надо?
Anonymous
Так то условия этому служат
Anonymous
?
Anonymous
if
Anonymous
Блииин только понял что не так делал... извините только учусь
Nikita
бойзы, я уже спрашивал, и мне дали хороший совет... но увы, действительность жестка
короч
суть
есть скрипт, который обращается к серваку и обрабатывает запросы
делает это он всё в цикле
но собсно проблема какая, при получении какой либо ошибки (к примеру кодировка не та), скрипт крашится
впринципе это вылавливаю и фиксю обработками ошибок
и вот это добро както надо запускать на удалённом хостинге
мне посоветовали сделать из скрипта демон/сервис, но увы, на хостинге такого низя
Nikita
как запустить скрипт, что б ещё можно было б ошибки вылавливать?