cubicweb/test/data/cubicweb_comment/schema.py
author Philippe Pepiot <philippe.pepiot@logilab.fr>
Thu, 05 Mar 2020 09:54:35 +0100
branch3.27
changeset 12898 e731c31eaed0
parent 12518 12e8b65146d9
permissions -rw-r--r--
[pkg] version 3.27.2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12518
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     1
from yams.buildobjs import (EntityType, RelationType, SubjectRelation,
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     2
                            RichString)
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     3
from cubicweb.schema import RRQLExpression
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     4
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     5
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     6
class Comment(EntityType):
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     7
    """a comment is a reply about another entity"""
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     8
    __permissions__ = {
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     9
        'read':   ('managers', 'users', 'guests',),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    10
        'add':    ('managers', 'users',),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    11
        'delete': ('managers', 'owners',),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    12
        'update': ('managers', 'owners',),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    13
        }
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    14
    content = RichString(required=True, fulltextindexed=True)
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    15
    comments = SubjectRelation('Comment', cardinality='1*', composite='object')
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    16
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    17
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    18
class comments(RelationType):
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    19
    __permissions__ = {
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    20
        'read':   ('managers', 'users', 'guests'),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    21
        'add':    ('managers', 'users',),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    22
        'delete': ('managers', RRQLExpression('S owned_by U'),),
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    23
        }
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    24
    inlined = True
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    25
    composite = 'object'
12e8b65146d9 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    26
    cardinality = '1*'