test/data/schema.py
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Thu, 18 Feb 2010 14:30:23 +0100
branchstable
changeset 4667 6c8eccb1b695
parent 4467 0e73d299730a
child 5421 8167de96c523
permissions -rw-r--r--
[fix] Apply fulltextindexed change in the actual index Change of the fulltextindexed attribute of a CWAttribute did actually change anything for already existing entity (but apply to new one). This patch fix this behaviour: * A new SingleLastOperation, UpdateFTIndexOp, to reindex entity whose ftindexation changed during a commit. This data is read from session.transaction_data['fti_update_etypes'] * The SourceDbRDefUpdate operation to store Etype who modify they fulltextindexed of attribute in session.transaction_data['fti_update_etypes']. * A new test is added to check the behaviour

"""

:organization: Logilab
:copyright: 2001-2010 LOGILAB S.A. (Paris, FRANCE), license is LGPL v2.
:contact: http://www.logilab.fr/ -- mailto:contact@logilab.fr
:license: GNU Lesser General Public License, v2.1 - http://www.gnu.org/licenses
"""

from yams.buildobjs import EntityType, String, SubjectRelation, RelationDefinition

class Personne(EntityType):
    nom = String(required=True)
    prenom = String()
    type = String()
    travaille = SubjectRelation('Societe')
    evaluee = SubjectRelation(('Note', 'Personne'))
    connait = SubjectRelation('Personne', symmetric=True)

class Societe(EntityType):
    nom = String()
    evaluee = SubjectRelation('Note')

class Note(EntityType):
    type = String()
    ecrit_par = SubjectRelation('Personne')

class SubNote(Note):
    __specializes_schema__ = True
    description = String()

class tags(RelationDefinition):
    subject = 'Tag'
    object = ('Personne', 'Note')

class evaluee(RelationDefinition):
    subject = 'CWUser'
    object = 'Note'