create function myfunction(myarg int) returns bool language python as $$
# а отут в нас Python
$$Бо з цього моменту нормально з редактором там вже не попрацюєш, а зовнішні інструменти взагалі не розуміють таку структуру.
Отже, сьогодні я написав фічу в Омнігресі, щоб можна було просто покласти цю функцію у .py-файл і воно його підхопить.
# SQL[[create function times_ten(a integer) returns integer]]
return a * 10У подальшому можна поліпшити підтримку того ж Python та інших мов, зокрема, використовувати інформацію з анотацій та типів. Але наразі цей простий як пробка підхід працює будь-де (принаймні, я так думаю).
(Деталі: https://docs.omnigres.org/omni_schema/reference/#multi-language-functions)
А що ще вам заважає додавати логіку до бази даних?