Comments on: Automatiser un peu plus SQLAlchemy declarative http://sametmax.com/automatiser-un-peu-plus-sqlalchemy-declarative/ Du code, du cul Mon, 28 Oct 2019 11:54:55 +0000 hourly 1 https://wordpress.org/?v=4.9.7 By: moumoutte http://sametmax.com/automatiser-un-peu-plus-sqlalchemy-declarative/#comment-148283 Thu, 13 Nov 2014 16:17:20 +0000 http://sametmax.com/?p=12584#comment-148283 SQLAlchemy, ça poutre. Mais la syntaxe django, c’est mieux (session.query(Model)).filter(Model.id == 12) WHAT !?).

Du coup, j’avais écrit un djangoificator à l’époque quand je découvrais SQLAlchemy. http://sqla-helpers.readthedocs.org/en/latest/sqla_helpers.html#module-sqla_helpers

Ca mériterait d’etre appronfondie, parce que je prefère la syntaxe django couplé à la puissace d’SQLAlchemy.
C’est un projet sans prétention et il faudrait encore quelques trucs pour que ça deviennent *vraiment* utilisable dans des cas compliqués (je pense notamment au requête sur du many-to-many). Si quelqu’un à le temps, il est le bienvenue.

]]>
By: Sam http://sametmax.com/automatiser-un-peu-plus-sqlalchemy-declarative/#comment-147594 Thu, 30 Oct 2014 18:03:08 +0000 http://sametmax.com/?p=12584#comment-147594 En vérité c’est plus compliqué que ça. Si j’ai une table “comments” par exemple, il est fort probable qu’une autre app puisse utiliser un nom similaire. Il faut donc aussi se mettre d’accord sur un préfixe qui servira d’espace de nom. Ce que fait par exemple Django en utilisant le nom de l’app à cette fin. De plus, certains systèmes ont une taille de nom de table limité en caractères. Ainsi, il faut aussi trouver un moyen de réduire le nom si il est trop grand. Ce que fait django en tronquant le nom sous la limite des caractères – 4, puis en rajoutant un numéro basé sur un hash du nom de la table. Comme d’hab, “we need to go deeper”.

]]>
By: Pierre http://sametmax.com/automatiser-un-peu-plus-sqlalchemy-declarative/#comment-147581 Thu, 30 Oct 2014 09:12:16 +0000 http://sametmax.com/?p=12584#comment-147581 J’ai lu pas plus tard que ce matin dans un petit bouquin dédié à Flask que la convention pour nommer les tables, c’était généralement d’utiliser un nom au pluriel (par exemple si ta classe est Animal, alors la table sera animals… oui, en anglais, parce qu’en français animals ça fait un peu con). L’auteur explique que c’est pour ça que SQLAlchemy n’impose pas un nom particulier et qu’il faut le définir à la mimine.

]]>