guillotina.configure
¶
-
guillotina.configure.
scan
(path)¶ Load a module dotted name.
Parameters: path ( str
) – dotted name
-
guillotina.configure.
json_schema_definition
(name, schema)¶ Register a json schema definition
Parameters: - name (
str
) – Name of schema - schema (
dict
) – schema definition, must be json compatible
Return type: None
- name (
-
guillotina.configure.
service
(**kwargs)¶ Configure a service
>>> from guillotina import configure >>> @configure.service(name='@foobar') async def foobar_service(context, request): return {'foo': 'bar'}
Parameters: - context (Interface) – Content type interface this service is registered against
- method (str) – HTTP method this service works against. Defaults to GET.
- permission (str) – Permission this service requires
- layer (str) – Layer this service is registered for. Default is IDefaultLayer
- name – This is used as part of the uri. Example @foobar -> /mycontent/@foobar.
- summary – Used for documentation and OpenAPI.
- description – Used for documentation and OpenAPI.
- responses – Used for documentation and OpenAPI.
- parameters – Used for documentation and OpenAPI.
- requestBody – Used for documentation and OpenAPI
- validate – Automatically validate request body with OpenAPI definition
-
guillotina.configure.
contenttype
(**kwargs)¶ Configure content type
>>> from guillotina import configure >>> from guillotina.content import Item >>> @configure.contenttype(type_name="Foobar") class Foobar(Item): pass
Parameters: - type_name (str) – Name of the content type
- schema (str) – Schema to use for content type
- add_permission (str) – Permission required to add content. Defaults to guillotina.AddContent
- allowed_types (list) – List of types allowed to be added inside this content assuming it is a Folder type. Defaults to allowing all types.
- behaviors (str) – List of behaviors to enable for this type.
- factory – Dotted name to custom factory to use. See guillotina.content.ResourceFactory for default implementation
-
guillotina.configure.
behavior
(**kwargs)¶ Configure behavior
>>> from guillotina import configure >>> from guillotina.behaviors.instance import ContextBehavior >>> class IMyBehavior(Interface): pass >>> @configure.behavior( title="Dublin Core fields", provides=IMyBehavior, for_="guillotina.interfaces.IResource") class MyBehavior(ContextBehavior): pass
Parameters: - title – Title of behavior
- provides – Schema to use for behavior
- behavior – Marker interface to apply to utilized instance’s behavior
- for_ – Content type this behavior is available for
-
guillotina.configure.
vocabulary
(**kwargs)¶ Configure vocabulary
>>> from guillotina import configure >>> @configure.vocabulary(name="myvocab") class MyVocab: def __init__(self, context): self.context = context self.values = range(10) def __iter__(self): return iter([]) def __contains__(self, value): return value in self.values def __len__(self): return len(self.values) def getTerm(self, value): return 'value'
Parameters: name – Reference of the vocabulary to get it
-
guillotina.configure.
addon
(**kwargs)¶ Configure addon
>>> from guillotina import configure >>> @configure.addon( name="docaddon", title="Doc addon", dependencies=["cms"]) class TestAddon(Addon): pass
Parameters: - name – Unique name of addon
- title – Title of addon
- dependencies – List of names of dependency addons
-
guillotina.configure.
adapter
(**kwargs)¶ Configure adapter
Parameters: - for_ – Type or list of types this subscriber is for: required
- provides – Interface this adapter provides
-
guillotina.configure.
utility
(**kwargs)¶ Configure utility
Parameters: - provides – Interface this utility provides
- name – Optional to name the utility
-
guillotina.configure.
permission
(**kwargs)¶ Configure permission
Parameters: - id –
- title –
- description –
-
guillotina.configure.
role
(**kwargs)¶ Configure role
Parameters: - id –
- title –
- description –
- local (bool) – defaults to True
-
guillotina.configure.
grant
(**kwargs)¶ Configure granting permission to role
Parameters: - role –
- principal –
- permission –
- permissions –
-
guillotina.configure.
value_serializer
(type)¶ Configure a value serializer
>>> @configure.value_serializer(bytes) >>> def bytes_converter(value): return b64encode(value)
Parameters: type – type to serialize
-
guillotina.configure.
value_deserializer
(field_type)¶ Configure a value deserializer
>>> @configure.value_deserializer(IText) >>> def field_converter(field, value, context): return value
Parameters: field_type – type of field to deserialize
-
guillotina.configure.
renderer
(**kwargs)¶ Configure a renderer
>>> @configure.renderer(name='text/plain') >>> class RendererPlain(StringRenderer): content_type = 'text/plain'
Parameters: name – content type the renderer can be used for
-
guillotina.configure.
language
(name)¶ Configure a language
>>> @configure.language(name='en') >>> class EN(DefaultLanguage): pass
Parameters: name – Name of language