cubicweb/server/test/data-migractions/cubes/fakecustomtype/site_cubicweb.py
author Denis Laxalde <denis.laxalde@logilab.fr>
Sat, 16 Jan 2016 13:48:51 +0100
changeset 11057 0b59724cb3f2
parent 11006 server/test/data-migractions/cubes/fakecustomtype/site_cubicweb.py@096adb786873
permissions -rw-r--r--
Reorganize source tree to have a "cubicweb" top-level package Basically: mkdir cubicweb hg mv *.py -X setup.py cubicweb hg mv dataimport devtools entities etwist ext hooks i18n misc schemas server skeleton sobjects test web wsgi cubicweb Other changes: * adjust path to cubicweb-ctl in devtools tests * update setup.py to avoid importing __pkginfo__ (exec it instead), replace os.path.walk by os.walk and prepend `modname` here and there * update tox.ini to account for new test locations * update doc/conf.py so that it still finds __pkginfo__.py and CWDIR in doc/Makefile

from yams import register_base_type
from logilab.database import get_db_helper
from logilab.database.sqlgen import SQLExpression

_NUMERIC_PARAMETERS = {'scale': 0, 'precision': None}
register_base_type('Numeric', _NUMERIC_PARAMETERS)

# Add the datatype to the helper mapping
pghelper = get_db_helper('postgres')


def pg_numeric_sqltype(rdef):
    """Return a PostgreSQL column type corresponding to rdef
    """
    return 'numeric(%s, %s)' % (rdef.precision, rdef.scale)

pghelper.TYPE_MAPPING['Numeric'] = pg_numeric_sqltype