cubicweb/misc/migration/3.22.3_Any.py
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Wed, 09 Nov 2016 11:44:27 +0100
branch3.24
changeset 11812 4e0829ade86f
parent 11291 7c565548fb09
permissions -rw-r--r--
[pyramid] Fix 404 handling Avoid seeing a traceback in the UI by catching it before it reaches pyramid and restore usage of the '404' view. Closes #16159863

from yams.constraints import UniqueConstraint

for rschema in schema.relations():
    if rschema.rule or not rschema.final:
        continue
    for rdef in rschema.rdefs.values():
        if (rdef.object != 'String'
                and any(isinstance(cstr, UniqueConstraint) for cstr in rdef.constraints)):
            table = 'cw_{0}'.format(rdef.subject)
            column = 'cw_{0}'.format(rdef.rtype)
            repo.system_source.create_index(cnx, table, column, unique=True)