-
Notifications
You must be signed in to change notification settings - Fork 0
Mustache for JSON SQL
Peter edited this page Nov 2, 2021
·
4 revisions
sudo apt install postgresql-plpython3-13
# pegadinha no path de instalação do módulo, ver https://stackoverflow.com/a/69811157/287948
sudo su
cd ~
umask 022
sudo pip3 install chevron
No SQL:
create extension plpython3u;
-- select * from pg_language;
CREATE or replace FUNCTION py3_return_version() RETURNS text AS $$
import sys
return sys.version
$$ LANGUAGE plpython3u;
CREATE FUNCTION lixo_chevron_test() RETURNS text AS $$
import chevron
return chevron.render('Hello, {{ mustache }}!', {'mustache': 'World'})
$$ LANGUAGE plpython3u;
select lixo_chevron_test();
CREATE or replace FUNCTION mustache_render(tpl text,i jsonb) RETURNS text AS $$
import chevron
import json
j = json.loads(i)
return chevron.render(tpl,j)
$$ LANGUAGE plpython3u IMMUTABLE;
-- select mustache_render('Hello, {{ mustache }}!', '{"mustache":"World"}'::jsonb);