
.
03.03.2017
14:54:09
Гайс, имею пару простых вьюх, считай указываю только класс от чего наследоваться, модель и шаблон. Такие же вьюхи тестами не покрываются?

Denis
03.03.2017
14:58:03
Покрывается тестами то что не покрыто, если ты про классовые вьюхи - то они уже покрыты джанговскими тестами

amureki
03.03.2017
15:01:20
Можно тестить, отдают ли они 200
И верный ли шаблон :)

Google

Denis
03.03.2017
15:01:34
Можно еще codecov юзать

.
03.03.2017
15:02:58
И это касается всех классовых вьюх? Можно практически забить на тесты?

amureki
03.03.2017
15:03:34
ну тесты вообще такая штука, что на них забивают

Eugene
03.03.2017
15:04:05
ну хз, люблю писать тесты:)

amureki
03.03.2017
15:04:12
но вообще, вьюхи тоже тестируются
проверяется, рабочие ли они, отдают ли нужный контекст
(все что тобой сделано)

Дмитрий
03.03.2017
15:16:20
да, хороший вопрос. насколько много нужно тестов?

ros
03.03.2017
15:29:13
насколько хватит терпения их писать

Eugene
03.03.2017
15:30:22
coverage подключи и сможешь узнать на сколько процентов и что именно покрыто тестами :)

ros
03.03.2017
15:33:13
онож в pycharm даже всроено
хоть и медлено но удобно сразу видеть что покрылось

Denis
03.03.2017
15:43:03
Можно в CI настроить например авто коверадж
я на shippable настроил такую тему

Google

Denis
03.03.2017
15:43:19
оч удобно

Андрей
03.03.2017
16:12:19
Т.е. тоже можно получить такую штуку и без пайчарма, если не хочется его юзать или это останавливает от перехода на другое ide / редактор ;)

ros
03.03.2017
16:16:39
это есесено есть
но надо лезть потом в браузере,
а тут оно все под рукой

Андрей
03.03.2017
16:25:20
Ну как лезть можно просто в команду запуска тестов закинуть питоновский опен урл ин браузер и тогда запустил тесты, в конце автоматом открылся броузер с итогом этого теста

Askhat
04.03.2017
10:34:27
Всем привет. Ребят, что можете посоветовать по реализации авторизации только по номеру телефона, без паролей типа как в Телеграме.

Eugene
04.03.2017
10:35:07
Токен + код?

Askhat
04.03.2017
10:36:07
Код чего?

Eugene
04.03.2017
10:36:40
Код для подтверждения, который будет отсылаться, например

Askhat
04.03.2017
10:36:49
А, да

Eugene
04.03.2017
10:36:54
Типа 5 значное число

Askhat
04.03.2017
10:36:57
Есть код 6 значный допустим, который будет подтверждаться
По поводу реализации с подтверждением ясно. Дальше как его авторизировать и держать сессию не совсем ясно, то есть если человек уйдёт с приложения, после того как он войдёт снова, как его опознать

Eugene
04.03.2017
10:38:27
По номеру телефона же

Askhat
04.03.2017
10:38:44
То есть передавать снова тот же номер телефона при входе в приложение?

Eugene
04.03.2017
10:39:00
Ну да, и отсылать новый СМС код

Askhat
04.03.2017
10:39:13
Лол? А телеграм как работает без этой мороки?
При каждом выходе из приложения, телеграм у меня не просит код

Eugene
04.03.2017
10:39:38
Ну веб версия вроде просит.
А вот приложуха хз как работает

Google

Askhat
04.03.2017
10:40:16
Кстати если это важно, то не для веба пишется, а для приложухи

Eugene
04.03.2017
10:41:07
Попробуй в телеграмме выйти из своего юзера, :)

Askhat
04.03.2017
10:41:40
Не, я говорю не про выход из учётки, а выход из приложения
Просто типа закрыть

ros
04.03.2017
10:42:12
после передачи правильного кода клиенту выдается токен ограниченного времени действия
дальше авторизация по токену
токен продлевается при каждой новой сессии

Askhat
04.03.2017
10:44:16

ros
04.03.2017
10:45:55
допусти токен выдается на месяц
если за месяц ни одной сессии по нему не подняли, он деактивируется
если открыли продлевается ещё на месяц с момента первого авторизованного запроса
в общем, дело ваше как там продлевать старый или выдавать новый, но не надо каждый раз слать СМС для каждой новой сессии

Askhat
04.03.2017
10:52:11
Вот момент продления не ясен. Для продления нужны ведь данные. Это будет только номер телефона? Пароля то нет, никаких данных нету

ros
04.03.2017
10:53:14
выданный токен связан с номером

Askhat
04.03.2017
10:54:02
Получается я смело могу своровать токен и просто продлить его?

ros
04.03.2017
10:54:48
он должен храниться локально в шифрованом виде на клиенте

ros
04.03.2017
10:55:25
это уже проблема реализации клиентской стороны
обмен с сервером по TLS с проверкой серверного сертификата для защиты от MITM
без физического доступа к локальным данным клиента не украдете

Set
04.03.2017
11:04:26
Dev Null, [4 марта 2017 г., 17:03]:
всем привет
что прописать в токене
вк
что бы было разрешение на фото альбом
выходит 200

Eugene
04.03.2017
11:05:19
200 ?

Set
04.03.2017
11:05:31
даа
нет доступа в фото альбом

Eugene
04.03.2017
11:06:05
Что такое 200?

Admin
ERROR: S client not available

Google

Askhat
04.03.2017
11:06:22

Eugene
04.03.2017
11:06:42
ну если 200 success - то должно быть все окей, не?

ros
04.03.2017
11:06:49


Set
04.03.2017
11:09:38
это ошибка в вк
такая есть
то есть нет доступа к альбому
api = vk.API(session)
api.wall.post(owner_id=-140897656, message="впвпрвправрпаврпа34выапывпвыапы5345345345врпавправрпвправ@")
result = api.photos.getWallUploadServer(gid='140897656')
print(result)
upload_url = result['upload_url']
print("!!!!!!!!!!!!!!", upload_url)
img = {'photo': ('img.png', open(r'C:/Python36/XXX/Grenty_Dubl_2/grenty_naoborot/test_vk/img.png', 'rb'))}
print("IMGGGGGGGGGG", img)
response = requests.post(upload_url, files=img)
result = json.loads(response.text)
api.photos.saveWallPhoto(server=result['server'], photo=result['photo'], hash=result['hash']);
api.wall.post(owner_id=-140897656, photo=result['photo'], hash=result['hash'], server=result['server'], message="111111111111111111", gid='140897656')

Eugene
04.03.2017
11:10:30
Пощади (

Serge
04.03.2017
11:20:55
Бог отладки ?

Dmitry
05.03.2017
11:34:51
Лол

Alexander
05.03.2017
11:40:14
Ребят, чат про Django, Димон на Django вроде не кодит

Serge
05.03.2017
11:50:12
Так это еще и не оригинальное видео, а копия созданная для набивки подсписчиков
Иными словами просто спам

b0g3r
05.03.2017
11:51:54

53r63rn4r
05.03.2017
11:58:42

Serge
05.03.2017
11:59:44
Накодил

Alexander
05.03.2017
12:31:56
да, точно, спам, забанил

Eugene
05.03.2017
12:33:05
еще и запись репортнуд на ютубе:)

Дмитрий
06.03.2017
12:24:02
добрый день! Вопрос. поставил ckeditor в env. Хочу чтобы при загрузке имена файлов нормально транслитерировались. В общем нашел функцию slugify_filename в ckeditor_uploader/utils.py и сделал там транслитерацию. Вопрос - как это вынести в проект чтобы не изменять пакет в env? Если закачиваю отчет.doc он закачивает как dgoi44wd.doc , т.е. делается случайный хеш. Как бы переопределить эту функцию в самом проекте? DEFAULT_FILE_STORAGE стоит свой но CKEditor его не использует

Serge
06.03.2017
12:45:12
CKEDITOR_UPLOAD_SLUGIFY_FILENAME

Google

Serge
06.03.2017
12:45:40
в setting.py туда пишешь свою функцию, если она не передопределена он берет свою функцию из utils
if getattr(settings, "CKEDITOR_UPLOAD_SLUGIFY_FILENAME", True):
upload_name = utils.slugify_filename(upload_name)
Вот кусок из самого ckeditor

Дмитрий
06.03.2017
12:59:08
спасибо! то что надо!!
в setting.py туда пишешь свою функцию, если она не передопределена он берет свою функцию из utils
переопределил, а он всё равно по дефолту выполняет. причем в условии вписал проверку - выводит название функции, переопреденной мной, но условие выполняется по дефолту... что я делаю не так?
CKEDITOR_UPLOAD_SLUGIFY_FILENAME = 'utils.storage.ckeditor_asciislugify'
проверяю так:
37 if getattr(settings, "CKEDITOR_UPLOAD_SLUGIFY_FILENAME", True):
38 print settings.CKEDITOR_UPLOAD_SLUGIFY_FILENAME
39 upload_name = utils.slugify_filename(upload_name)
этот принт выводит utils.storage.ckeditor_asciislugify

Serge
06.03.2017
13:36:56
Там все криво. Это только флаг. Соответственно без правки самого модуля можно пойти только по одному пути такому же кривому.