plone.api.relation
#
Module that provides functionality for relations.
Heavily inspired by collective.relationhelpers.
- plone.api.relation.create(source=None, target=None, relationship=None)[source]#
Create a relation from source to target using zc.relation.
- Parameters:
source (Content object) -- [required] Object that the relation will originate from.
target (Content object) -- [required] Object that the relation will point to.
relationship -- [required] Relationship name. If that name is the same as a field name and this field is a RelationChoice / RelationList we will update the field-value accordingly.
- Example:
- plone.api.relation.delete(source=None, target=None, relationship=None)[source]#
Delete relation or relations.
- Parameters:
source (Content object) -- Object that the relation originates from.
target (Content object) -- Object that the relation points to.
relationship -- Relationship name. If that name is the same as a field name and this field is a RelationChoice/RelationList we will delete/update the field-value accordingly.
- Example:
- plone.api.relation.get(source=None, target=None, relationship=None, unrestricted=False, as_dict=False)[source]#
Get specific relations given a source/target/relationship.
- Parameters:
source (Content object) -- Object that the relations originate from.
target (Content object) -- Object that the relations point to.
relationship -- Relationship name.
unrestricted -- If true bypass permission-check on source and target.
as_dict -- If true, return a dictionary with the relationship name as keys.
- Returns:
A list of relations
- Return type:
List of RelationValue objects
- Example: