assembl.models.path_utils module¶
Utilities for traversing the set of content related to an idea and vice-versa.
-
class
assembl.models.path_utils.DiscussionGlobalData(db, discussion_id, user_id=None, discussion=None)[source]¶ Bases:
objectCache for global discussion data, lasts as long as the pyramid request object.
-
property
parent_dict¶ dictionary child_idea.id -> parent_idea.id.
TODO: Make it dict(id->id[]) for multiparenting
-
property
-
class
assembl.models.path_utils.PostPathCombiner(discussion)[source]¶ Bases:
assembl.models.path_utils.PostPathGlobalCollection,assembl.models.idea.IdeaVisitorA traversal that will combine the PostPathLocalCollections of an idea with those of the idea’s ancestors. The result is that the as_clause of each PostPathLocalCollections in self.paths is globally complete
-
class
assembl.models.path_utils.PostPathCounter(discussion, user_id=None, calc_subset=None)[source]¶ Bases:
assembl.models.path_utils.PostPathCombinerAdds the ability to do post counts to PostPathCombiner.
-
class
assembl.models.path_utils.PostPathData(post_path, positive)[source]¶ Bases:
objectData about a single post_path.
-
class
assembl.models.path_utils.PostPathGlobalCollection(discussion=None)[source]¶ Bases:
objectCollects PostPathLocalCollections for each idea in the discussion Maintains paths, a dictionary of PostPathLocalCollections by idea_id
-
class
assembl.models.path_utils.PostPathLocalCollection[source]¶ Bases:
objectData about all PostPaths local to an Idea.
-
as_clause_base(db, discussion_id, include_breakpoints=False, include_deleted=False)[source]¶ Express collection as a SQLAlchemy query clause.
- Parameters
include_breakpoints (bool) – Include posts where a threadbreak happens
include_deleted – Include posts in deleted_publication_states. True means only deleted posts, None means all posts, False means only live posts or deleted posts with live descendants.
-