test/data_schemareader/schema.py
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Thu, 13 Jun 2013 18:50:19 +0200
changeset 9017 aa709bc6b6c1
parent 8167 41ec579e27c4
child 10907 9ae707db5265
permissions -rw-r--r--
[application/connect] simplify connection logic ``application.connect`` now either sets a full featured ``DBAPISession`` to the ``WebRequest`` object or raises ``AuthenticationError``. The creation and usage of a fake DBAPISession is now handled by ``main_handle_request`` when needed. This means that fake DBAPISession are no longer tracked by the session manager and that user are not given anyway to retrieve them for a later request. This fake DBAPISession is still passed to ``core_handle`` because multiple cubes like registration or forgotten password need this behavior. We would like to get ride of it in the future. This clarification of the connection API greatly simplifies ``DBAPISession`` retrieval//creation process opening the way to improvements in this area. Related to #2503918
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8167
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     1
from cubicweb.schemas.base import in_group, CWSourceSchemaConfig
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     2
# copy __permissions__ to avoid modifying a shared dictionary
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     3
in_group.__permissions__ = in_group.__permissions__.copy()
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     4
in_group.__permissions__['read'] = ('managers',)
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     5
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     6
cw_for_source = CWSourceSchemaConfig.get_relation('cw_for_source')
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     7
cw_for_source.__permissions__ = {'read': ('managers', 'users'),
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     8
                                 'add': ('managers',),
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     9
                                 'delete': ('managers',)}
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
    10
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
    11