exhibition.node module¶
-
class
exhibition.node.
Node
(path, parent, meta=None)[source]¶ Bases:
object
A node represents a file or directory
- Parameters
path – A
pathlib.Path
that is either thecontent_path
or a child of it.parent – Either another
Node
orNone
meta – A dict-like object that will be passed to a
Config
instance
-
add_child
(child)[source]¶ Add a child to the current Node
If the child doesn’t already have its
parent
set to this Node, then anAssertionError
is raised.
-
property
cache_bust
¶
-
property
content
¶ Get the actual content of the Node
If
filter
has been specified inmeta
, that filter will be used to further process the content.
-
property
data
¶ Extracts data from contents of file
For example, a YAML file
-
classmethod
from_path
(path, parent=None, meta=None)[source]¶ Given a
pathlib.Path
, create a Node from that path as well as any children. Children are loaded in Unicode codepoint order - this order is preserved inNode.children
if you’re unsure what that means.If the path is not a file or a dir, an
AssertionError
is raised- Parameters
path – A
pathlib.Path
that is either thecontent_path
or a child of it.parent – Either another
Node
orNone
meta – A dict-like object that will be passed to a
Config
instance
-
property
full_path
¶ Full path of node when deployed
-
property
full_url
¶ Get full URL for node, including trailing slash
-
get_from_path
(path)[source]¶ Given a relative or absolute path, return the
Node
that represents that path.- Parameters
path – A
str
orpathlib.Path
-
property
index_file
¶
-
property
marks
¶ Marked sections from content
-
property
meta
¶ Configuration object
Finds and processes the YAML front matter at the top of a file
If the file does not start with
---\n
, then it’s assumed the file does not contain any meta YAML for us to process
-
render
()[source]¶ Process node and either create the directory or write contents of file to
deploy_path
-
property
siblings
¶ Returns all children of the parent Node, except for itself
-
property
strip_exts
¶