@ru_python

Страница 9567 из 9768
Владимир
11.07.2019
08:45:15
Мужики, давайте без очередной заезженой дискуссии. Что толку то?

Андрей
11.07.2019
08:45:18
Vitalii
11.07.2019
08:45:23
И у тебя какая-то модель в голове уже есть

Google
Владимир
11.07.2019
08:45:34
а во фласке все довольно тупо и очевидно
да там везде все очевидно и во фласке и в джанге. Джанга - коробка "все свое ношу с собой", фласк "собери сам" вот и вся разница

Andrey
11.07.2019
08:46:04
я согласен с первым утверждением. если на 100% известно что бекенд ни для чего кроме апи использоваться не будет, то можно и Фласк\Фалькон Но обычно и ОРМ и админка и авторизация какая-нибудь нужна. В случае фласка придется прикручивать еще компоненты, а в джанго есть изкаропки

Tishka17
11.07.2019
08:46:14
в джанге как минимум я до сих пор не понимаю, почему юниттесты у всех кто их пишут внезапно связаны с базой

Tishka17
11.07.2019
08:46:50
в смысле юзают базу

Артём
11.07.2019
08:47:05
обычные люди просто принимают как данность и работают с тем что есть)

Vitalii
11.07.2019
08:47:16
Ну, у меня не юзают, что я делаю не так?)

Tishka17
11.07.2019
08:47:20
я сам не писал на джанге, но чет куда ни гляну у всех "юнит" тесты юзают базу

Andrey
11.07.2019
08:47:26
я помню в рельсах тоже использовалась отдельная база которая заполнялась тестоввыми данными и очищалась по окончанию тестов

Tishka17
11.07.2019
08:47:37
Ну, у меня не юзают, что я делаю не так?)
видимо ты как раз делаешь все как надо

Владимир
11.07.2019
08:48:29
я сам не писал на джанге, но чет куда ни гляну у всех "юнит" тесты юзают базу
Да не обязательно. Можно не использовать. Но при прогонке тестов поднимается временная тестовая БД, можно ее заполнить тестовыми данными, которые умрут вместе с БД после завершения

Google
Uluk
11.07.2019
08:48:40
Сделаем легче: кто начинал с джанго или фласк и был доволен первым выбором

Владимир
11.07.2019
08:48:59
видимо ты как раз делаешь все как надо
а как надо?)))) Я сильно сомневаюсь всегда в существовании одного верного решения.

Владимир
11.07.2019
08:49:31
эм. это уже не юнит тесты, елси они лазят в БД
Это уже вопросы терминологии и философии.

Tishka17
11.07.2019
08:50:05
ну вот для тестов бизнеслогики не нужна БД, нужно тестить только бизнес логику.

а работу с БД можно прерить отдельно

Владимир
11.07.2019
08:50:29
Tishka17
11.07.2019
08:50:37
использование БД усложняет тест

1. ты не можешь некоторые кейсы воспроизвести, потому что хз как их на текущую реализацитю БД натащить 2. тесты начинают пересекаться по данным и мешать друг другу. В идеале пересоздавать БД перед каждым тестом, но тогда пункт 3 становится ещё хуже 3. Тесты с БД сильно медленнее

ну да ладно

в общем, джанга предлагает набор методик, которые зачастую вредные или спорные и в перспективе как раз дают меньше гибкости приложению

Марк
11.07.2019
08:53:20
выбирать между ними надо исходя из задачи, а так питонячие фремворки сравнивать все равно, что сравнивать хайлендер и клюгер
"от задачи зависит", ой, как же меня бесит эта хуйня. - Можно ли ебать детей? - От задачи зависит.

Tishka17
11.07.2019
08:53:30
но в 90% случаев это и не нужно для тех сайтов, которые делают

Владимир
11.07.2019
08:54:15
1. ты не можешь некоторые кейсы воспроизвести, потому что хз как их на текущую реализацитю БД натащить 2. тесты начинают пересекаться по данным и мешать друг другу. В идеале пересоздавать БД перед каждым тестом, но тогда пункт 3 становится ещё хуже 3. Тесты с БД сильно медленнее
- Да, БД пересоздается каждый раз. Чаще всего. Это если используется - Чтобы не пересекались по данным надо подчищать после теста за собой. Либо терпеть пересечения. - Да, медленней, потому что с БД.

Tishka17
11.07.2019
08:55:14
каждый раз - перед каждым тестом

это единственный более менее работающий способ очистки

и то не факт, мы как-то написали тест, который просто сломал схему БД и она даже не удалялась

yj 'nj rjytxyj cjdctv rhfqybq ckexfq

но это конечно крайний случай

Google
Artyem
11.07.2019
08:56:39
"от задачи зависит", ой, как же меня бесит эта хуйня. - Можно ли ебать детей? - От задачи зависит.
приведённый вами пример как-о опровергает фразу "От задачи зависит." ?

Tishka17
11.07.2019
08:57:00
А во ткак чистить схему после провалившегося теста - непонятно, потому что тест провалился и значит поведение неопределено.

Марк
11.07.2019
08:57:20
Владимир
11.07.2019
08:57:32
"от задачи зависит", ой, как же меня бесит эта хуйня. - Можно ли ебать детей? - От задачи зависит.
Вас не учили культурно разговаривать? Не все готовы поддерживать диалог в таком ключе.

Artyem
11.07.2019
08:57:32
Андрей
11.07.2019
08:58:04
sanic! Или FastAPI )
Саник прикольно, но надо будет прикручивать орм туда. Потому что гино – помойка.

Bogdan (SirEdvin)
11.07.2019
08:58:04
А во ткак чистить схему после провалившегося теста - непонятно, потому что тест провалился и значит поведение неопределено.
эм ... как можно поломать схему в тесте, если обычно тест запускается в одной транзакции?

sqlalchemy-core и никаких orm)

Владимир
11.07.2019
08:58:39
А во ткак чистить схему после провалившегося теста - непонятно, потому что тест провалился и значит поведение неопределено.
А зачем? Если он свалился, то надо его починить и перезапустить тесты. Ведь последующие уже будут сломаны тоже.

Bogdan (SirEdvin)
11.07.2019
08:58:40
Есть вроде еще peewee-async

Tishka17
11.07.2019
08:58:41
А зачем? Если он свалился, то надо его починить и перезапустить тесты. Ведь последующие уже будут сломаны тоже.
елси сломался тест, хочется видеть какой конкретно сломался. И вдеть что остальные не сломались.

Андрей
11.07.2019
08:59:06
Bogdan (SirEdvin)
11.07.2019
08:59:22
например тест миграций =D
Ммм, тесты миграций. Помимо вопроса "зачем", мне кажется, что такие штуки тестятся прямо на дев/стейдж сервере через CI

Tishka17
11.07.2019
08:59:35
Иначе можно чинить 1000 тестов, хотя сломались 100 только

Bogdan (SirEdvin)
11.07.2019
08:59:37
Сложно
Ну не знаю, мне вот нормальные запросы на django-orm куда сложнее строить)

Владимир
11.07.2019
08:59:49
Vladimir
11.07.2019
09:00:07
Кто нибудь получал фото учетной записи из AD через LDAP ?

Google
Tishka17
11.07.2019
09:00:19
Ммм, тесты миграций. Помимо вопроса "зачем", мне кажется, что такие штуки тестятся прямо на дев/стейдж сервере через CI
ну ладно. Про миграции скорее шутка. Но вот как ты будешь тестить в одной транзакции тот код, который уже юзает несколько транзакций - хз

Bogdan (SirEdvin)
11.07.2019
09:00:40
Если мы говорим про веб-приложение, если у вас код юзает несколько транзакций - это уже больно

Artyem
11.07.2019
09:00:43
эм ... как можно поломать схему в тесте, если обычно тест запускается в одной транзакции?
нуну, в любой момент времени в любом месте может появится сайдэфект который может что-то и закоммитить спокойно

Марк
11.07.2019
09:00:53
Фласк или Джанго? Вроде та же херня только в профиль, а вот если открыть вакансии, то джанго-джанго-джанго

Bogdan (SirEdvin)
11.07.2019
09:01:27
Если вы коммитите ручками, при условии, что вы используете Django, то эти ручки лучше исправить. Реально не могу представить случая, зачем коммитить в обход django

Андрей
11.07.2019
09:01:37
Bogdan (SirEdvin)
11.07.2019
09:02:05
ну ладно. Про миграции скорее шутка. Но вот как ты будешь тестить в одной транзакции тот код, который уже юзает несколько транзакций - хз
Еще добавлю, что несколько транзакции могут быть нужны исключительно для синхронизации данных между несколькими процессами, по идее. А в случае одного теста это вполне можно выполнить в одной, что django и делает

Владимир
11.07.2019
09:02:13
Фласк или Джанго? Вроде та же херня только в профиль, а вот если открыть вакансии, то джанго-джанго-джанго
Это рынок. И разработчики идут за рынком. Можно сколько угодно твердить про фласк, ботл и другие вещи, но если на рынке это не нужно, то толку от них 0

Tishka17
11.07.2019
09:02:38
и дать юзеру возможность перезалить вторую половину

Bogdan (SirEdvin)
11.07.2019
09:02:57
Опять же, в случае теста это все может выполнятся в одной транзакции, разве нет?

Tishka17
11.07.2019
09:03:55
нет. Ты можешь как раз тестить что там сохраняется половина данных если второй кусок не прошел

Марк
11.07.2019
09:04:41
Это рынок. И разработчики идут за рынком. Можно сколько угодно твердить про фласк, ботл и другие вещи, но если на рынке это не нужно, то толку от них 0
Ага. Рыночек решает. Но я бы в столь категоричной форме не высказывался - фласк тоже есть на рыночке. Просто его намного меньше.

Дмитрий
11.07.2019
09:06:15
кстати, а что значит "знаю фласк"?

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

Bogdan (SirEdvin)
11.07.2019
09:07:01
нет. Ты можешь как раз тестить что там сохраняется половина данных если второй кусок не прошел
Ну так оно так и сохранится, если вторая часть упадет, потому что отката транзакции не будет

Дмитрий
11.07.2019
09:07:15
еще интереснее про "знать bottle", который вообще однофайловые фреймворк

Google
Дмитрий
11.07.2019
09:09:23
другое дело, что надо уметь в http(s), понимать как работают миграции, как работает окружение (от сервера до БД). и вот тут новичку будет полезнее по одной батарейке подключать и смотреть, чем в джанге запустить проект и долго смотреть на него, имхо

Дмитрий
11.07.2019
09:12:30
Что за батарейки?
доп либы, которые дают то, чего нет во фласке изначально

кеширование, орм, ...

можно в pypi посмотреть на список по запросу flask-*

Andrey
11.07.2019
09:18:47
можно в pypi посмотреть на список по запросу flask-*
а в питоне встречается ситуация, когда есть несколько модулей от разных авторов, которые делают _примерно_ то же самое?

Tishka17
11.07.2019
09:19:00
да полно

Дмитрий
11.07.2019
09:19:12
Как и везде где больше одного издателя модулей

(Мы тут кстати сейчас обсуждали фласк и джанго, которые _примерно_ одно и то же делают)

Unknown
11.07.2019
09:20:13
Кто-нибудь встречал либы для работы с json полями в mysql/mariadb?

Andrey
11.07.2019
09:21:01
(Мы тут кстати сейчас обсуждали фласк и джанго, которые _примерно_ одно и то же делают)
не совсем. джанго может делать тоже самое что и фласк, но голый фласк не может делать того что может голый джанго(фреймворк).

я в жс устал тратить кучу энергии на выбор модулей для приложения поэтому, мне проще взять Джанго которая покрывает 90% типовых потребностей и не ломать голову над тем что выбрать для ОРМа и что для темплейтов.

Дмитрий
11.07.2019
09:24:05
Andrey
11.07.2019
09:25:31
программным инженерам платят за то, чтобы они решали проблему бизнеса. а за героическую борьбу с придуманными проблемами никто не платит

Дмитрий
11.07.2019
09:27:26
программным инженерам платят за то, чтобы они решали проблему бизнеса. а за героическую борьбу с придуманными проблемами никто не платит
а если джанга в один момент перестанет решать проблемы бизнеса?) не, я не спорю что джанга клевая когда надо быстро накидать типовой сайт с админкой и блогом. но и умение выбрать из пары либ нужную героической борьбой бы не назвал

Страница 9567 из 9768