Форум сайта python.su
FanTech
sqlalchemy не имеет стабильной версии. Что реально напрягает.
FanTechЯ надеюсь вы уже поняли что такое ORM, и почему ваше высказывание несостоятельное.
Я имею ввиду, что тесты на стабильность этой технологии на сколько я знаю никто особо не проводил. То есть не возможно понять какие глюки могут произойти если база будет таких больших размеров.
Офлайн
4kpt_IIIНе совсем понимаю, что вас так развеселило. Объясните, пожалуйста, почему я прогнал пургу?
Посмеялся от души. Спасибо.
JOHN_16А почему высказывание не состоятельно?
почему ваше высказывание несостоятельное.
Офлайн
FanTech
по вашей логике версия 1.0 это стабильнейший релиз в котором нет ошибок. А 100% покрытие тестами говорит о 100% стабильности. Вот именно это и заблуждения.
Версификация в современном мире вообще перестала иметь однозначно важное значение. Чего стоит Хром и ФайрФОкс 40ых версий, а systemd 240 или сколько там, не помню. НУ а Линукс, который 2вой версией держался наверное с десяток лет,а за пару лет заимел версию 4. И т.п. историй много.
Каждый автор софта имеет свое видение и иерархию версионности того или иного проекта. И это не является показателем стабильности напрямую, а косвенно, да тоже нет - практика показывает.
100% покрытие тестами говорит лишь о том что для каждого куска кода проекта существует тестирующий код, при этом речь не идет о качестве самого теста т.о. существует вполне себе ситуация когда полностью покрытый тестами код даст ошибку, и это будешь лишь означать что для этого кода не написан тест который провоцирует полученную ошибку.
Это реальный мир и он сложнее и не однозначней, чем нам того хотелось бы.
Офлайн
JOHN_16
Я вас понял.
Что касается базы. Я так понимаю, что SQlite в моем случае будет оптимальным выбором, так как большинство запросов к базе будет на чтение. Единственное чего я не понимаю, так это как взаимодействовать с ней в Питон 3? В PHP я использовал PDO при запросах к MySQL. В SQlite на Питоне я так понимаю эту роль выполняет SQLAlchemy? Или я заблуждаюсь?
И еще какими средствами можно представить SQlite в графическом виде (по типу PHPmyADMIN для MySQL, Access для mdb и т.д)? Кроме конечно блокнота. Я имею ввиду в табличном виде.
Отредактировано FanTech (Ноя. 30, 2015 17:29:04)
Офлайн
FanTech
В питоне ты можешь обращаться к базе безо всяких ОРМов, если тебе так хочется. Создаешь соединение, курсор и вперед - посылай запросы. https://www.python.org/dev/peps/pep-0249/
Офлайн
FishHookСпасибо, за ответ. Просто чем мне нравился PDO. При переходе на другую базу достаточно было изменить пару строк и все работает уже на другой базе. Да и безопасность контролировать было проще. А вот можете аналог PDO на питоне посоветовать? Это не SQLAlchemy?
В питоне ты можешь обращаться к базе безо всяких ОРМов, если тебе так хочется. Создаешь соединение, курсор и вперед - посылай запросы. https://www.python.org/dev/peps/pep-0249/
Офлайн
Откройте документацию или любую статью по sqlalchemy и все поймете…
P.S. Ну и не вспоминайте здесь PHP. Народ нервно реагировать может. Например, я
Офлайн
FanTech
ОРМ создает те же самые запросы, тут нет никакой магии. Ты можешь написать как-то так
query = Product.objects.all()
SELECT "ID", "NAME", "COST", "COUNT" FORM PRODUCT
FanTechАга, а теперь покажи как будет выглядеть формирование запроса по пользовательским фильтрам. Представь, есть тот же самый товар как выше, но пользователь ГЕТ запросом выбирает не все записи, а соответсвующие фильтру если фильтр указан.
При переходе на другую базу достаточно было изменить пару строк
# # GET = {"name__icontains": "Шуба", "cost__range": [0, 100000]} # # query = Product.objects.filter(**request.GET)
Отредактировано FishHook (Ноя. 30, 2015 18:08:09)
Офлайн
FanTechНу и что? Посмотри сколько СУБД поддерживает алхимия, так для общего развития.
При переходе на другую базу достаточно было изменить пару строк
Офлайн
4kpt_IIIХорошо не буду. Сам пытаюсь с него перелезть на Питон, но пока еще не все понимаю. Многое не очень привычно. sqlalchemy ничего путного на русском найти не могу, что бы человечески разжевано было без этого академического сленга.
P.S. Ну и не вспоминайте здесь PHP. Народ нервно реагировать может. Например, я
Офлайн