Edit on GitHub
Jump to docs navigation

Extending / Storage Layer / Overview of Bolt Storage

Note: You are currently reading the documentation for Bolt 3.0. Looking for the documentation for Bolt 3.6 instead?

The internals of the Bolt storage system have been significantly refactored for the 3.x series of releases. This section gives an overview of the responsibilities of each component. Note that this section will only be of interest to you if you need to interact with the storage internals, either when writing application code or perhaps in developing an extension.

If you are just interested in fetching content records then you can continue to refer to the content fetching pages.

Hierarchy of Storage in BoltΒΆ

There is a single point of entry for all storage interactions within Bolt and this is usually accessible with a call to $app['storage']. If you implement your own controllers, which is normally recommended when you want control over content fetching, then any queries that you would like to make can be accessed through this object.

The basic hierarchy of the storage layer is described below, and clicking through gives a much more indepth description of the functionality of each layer.

Entity Manager

Repositories

Entity

Metadata

Hydration & Persistence

Whilst there are individual responsibilities for each of these layers, in practice you can perform most normal search, insert, update and delete operations by interacting only with the EntityManager which within Bolt is accessed with a call to $app['storage'].

Edit this page on GitHub
Couldn't find what you were looking for? We are happy to help you in the forum, on Slack or on IRC.