thesis v0.0.16 Thesis.Store behaviour
Thesis.Store is an Elixir “behaviour” that defines the public function interface necessary for Thesis to use a particular store module.
There are currently three required functions, as described below.
Summary
Callbacks
Returns a Thesis.Page struct with the given slug (aka request_path)
Returns a list of related Thesis.PageContent structs both for the given Thesis.Page struct and global content areas. This is generally used to populate the page content using the Thesis.View.content/4 function
Updates the given page (identified by its slug) with the given map of
string keys and Thesis.PageContent structs. Returns :ok
Callbacks
Specs
page(String.t) :: Thesis.Page.t
Returns a Thesis.Page struct with the given slug (aka request_path).
Specs
page_contents(Thesis.Page.t) :: [Thesis.PageContent.t]
Returns a list of related Thesis.PageContent structs both for the given Thesis.Page struct and global content areas. This is generally used to populate the page content using the Thesis.View.content/4 function.