
Set
14.04.2017
10:23:54
вылеатет ошибка
https://github.com/AlexVFornazieri/django-files-widget
или этого модуля уже нет в 1.9

Vladislav
14.04.2017
10:29:42
У меня такой вопрос. Если я в одном модуле задам переменную и опишу класс, то созданный экземпляр класса из другого модуля увидит эту переменную?

Google

Igor
14.04.2017
10:34:42
https://gist.github.com/hatarist/5a12587a0d11d0d820ebdf8ea5a0c8bf
если правильно тебя понял

Григорий
14.04.2017
10:44:43

Vladislav
14.04.2017
10:44:46
А вообще на что влияет полный или частичный импорт? Не в примере моего вопроса

b0g3r
14.04.2017
10:46:59
Полный это какой?
from A import *
?

Vladislav
14.04.2017
10:48:18
Полный я так понимаю это import some
А частичный from some import body

b0g3r
14.04.2017
10:49:48
ну при import some все его элементы будут доступны по some.body
при from some import body - просто body
какой-то глобальной разницы никакой, но бывает нужно например из двух разных модулей импортнуть что-то, которое называется одинаково
тогда либо импортить модуль и брать оттуда: some.body и some2.body, либо делать from some import body as other_body

Google

Donaudampf
14.04.2017
10:51:09
ещё можно скрывать имена от импотра, то есть from A import * не импортирует имена с _ вроде как

Vladislav
14.04.2017
10:55:27
Я по своей неопытности думал может на производительность как-то влияет) а про пространство имен вроде понятно

Григорий
14.04.2017
10:55:28

b0g3r
14.04.2017
10:56:54
а _
и __?

Maksim
14.04.2017
12:25:42
https://pastebin.com/qmq5YbAz
приветствую, можете просветлить, а то запутался, вот я хочу инициализировать request при запросе на весь класс, как получить request не передавая его?
ведь нельзя передать в url

Никита
14.04.2017
12:30:34

Maksim
14.04.2017
12:30:42

Никита
14.04.2017
12:30:48
CBV в помощь

Igor
14.04.2017
12:31:15
и ccbv.co.uk до кучи

Maksim
14.04.2017
12:40:49
хм, а при этом можно вызвать отдельную функцию из класса?

Dmitriy
14.04.2017
12:44:40
Можно, разрешаю

Eugene
14.04.2017
12:46:24
re.compile(re.escape('text'), re.IGNORECASE) как сделать, чтобы не попадало под это "text-bla" берет с этой строки text, надо чтобы игнорировал

Max
14.04.2017
12:49:59
Вопрос: я пишу модуль, содержащий вебхук и для его работы нужен сервер и ссл.
Можно ли как-то затестить без деплоя и с помощью юнит-тестирования?

dmks
14.04.2017
12:52:06
зависит от того как ты это написал что и конкретно хочешь протестировать

stonepig
14.04.2017
12:52:07
да, мож замокать

Max
14.04.2017
12:53:16
сейчас выбираю между юнит-тестом получения через вебхук или запуском на локальной машине через getUpdates и написанием вебхука отдельно ближе к деплою на впс

Google

Alex
14.04.2017
12:56:28

stonepig
14.04.2017
12:57:25
а мог бы request-ом затестить
либой :)

Alex
14.04.2017
12:57:39
либо так

stonepig
14.04.2017
12:57:41
http://docs.python-requests.org/en/master/

Max
14.04.2017
13:02:50
спасибо!

b0g3r
14.04.2017
13:02:59
Мокай
Зачем реальные запросы слать?
Проверять работу веб сервера?
У джанги еще как-то можно тестить эндпоинты по умному

Maksim
14.04.2017
13:06:18
https://pastebin.com/RSZwhTrp
выходит что можно получить, если создать ф-ции get, post и остальные
а как быть если будет 100500 ф-ций в классе и нужно будет дернуть именно одну, не передавай request

тнн Itjunky
14.04.2017
13:35:24
Мужики, памагайти...
Приходит юникодная строка
1.00
А нужно инт или хотябы флоат из неё получить. Уже запарился туда сюда гонять...

stonepig
14.04.2017
13:35:44
int(stroka)

Igor
14.04.2017
13:35:45
s = u'1.00'
float(s)
но второму питону стоит умереть

stonepig
14.04.2017
13:36:23
дай мазафака дай

тнн Itjunky
14.04.2017
13:36:59
int(stroka)
Я тоже так попробовал самым первым, но... получил 500-ую ошибку
У меня третий питон

Igor
14.04.2017
13:37:16

Google

тнн Itjunky
14.04.2017
13:37:37
трейсбек
Фласк ничо толком не выводит =( Чем уложняет мне отладку

Igor
14.04.2017
13:37:42
500 ошибка возвращается для клиента
надо узнать причину возникновения ошибки
debug = false что ли?
ну значит поставь debug = True

тнн Itjunky
14.04.2017
13:38:38
app.run(debug = True)

Igor
14.04.2017
13:39:05
и че, все равно не выводит ничего в консольке?
как запускаешь?
есть конфиг? покажи

stonepig
14.04.2017
13:39:18
In [16]: s = '1.00'
In [17]: s = float(s)
In [18]: type(s)
Out[18]: float

тнн Itjunky
14.04.2017
13:39:28
Какой конфиг?

Igor
14.04.2017
13:39:37
фласкового приложения, если есть
http://flask.pocoo.org/docs/0.12/config/
но видимо нету
как запускаешь?

тнн Itjunky
14.04.2017
13:40:45
Ну да, нету. В uwsgi запускаю

Igor
14.04.2017
13:40:52
ну значит в логи uwsgi смотри

тнн Itjunky
14.04.2017
13:41:18
Вот там ничего и нету толком, кроме запроса и 500-го ответа

Igor
14.04.2017
13:42:23
ну значит нахуй uwsgi, запусти фласковский сервер напрямюу
стоп. раз через uwsgi грузишься и указываешь debug=True только во время app.run, то дебаг у тебя выключен, получается? *))
странно, в общем

Google

тнн Itjunky
14.04.2017
13:43:44
https://codepaste.net/976gtb
вот лог

Igor
14.04.2017
13:43:50
есть у тебя там где-нибудь hello.py, и там
app.run(debug=True)
значит пишешь python3 hello.py
видишь там заветное http://0.0.0.0:5000/
заходишь и
> Fri Apr 14 17:43:04 2017 - unable to load app 1 (mountpoint='valetamine.itjunky.ws|') (callable not found or import error)
че там символ pipe делает

тнн Itjunky
14.04.2017
13:44:30
Про пайп,хз

Igor
14.04.2017
13:45:29
ладно, это лог uwsgi
давай все-таки напрямую фласковый сервер запустим
ну либо поставь
app.debug = True
где-нибудь сразу после создания app

тнн Itjunky
14.04.2017
13:51:59
File "web-valetamine.py", line 38, in success
params.append('TRANSACTION FINDED'+str(type(amount))+amount)
TypeError: cannot concatenate 'str' and 'float' objects

Igor
14.04.2017
13:52:51
?
сам справишься? ;)
склеивать объекты разных типов с помощью + это не очень ок
есть .format
есть f-strings в 3.6
но в любом случае, amount у тебя это видимо float, потому что 'transaction finded' - это строка, и str(type(amount)) - это тоже строка
а ты делаешь str + str + float
поэтому надо str + str + str(float)

тнн Itjunky
14.04.2017
13:59:59
Да, я привожу к строке, а когда уже во флоут или инт пытаюсь, то вываливается
amount = float(request.args.get('ac_buyer_amount_with_commission').encode('ascii'))
Эта группа больше не существует