Chapter 5: Backend modules

The main purpose of a backend module is to capture data to store in our database. Generally, it's the admin user or a backend user that interacts with this kind of a module.

Curry cms supports two kinds of frameworks for constructing backend modules:

  • Flexigrid
  • ModelView

Both technologies are supported out of the box.

The Flexigrid

This was an old technology that was incorporated into Curry in its early stages of development. It uses the Flexigrid widget to render your data in a tabular format. You can see that we have used the flexigrid widget in the Curry_Backend_Database core module. It can be useful if you want to list data in a tabular format.

Writing code for the Flexigrid is lengthy. I have written a better framework for the flexigrid model named Silva. It is well documented and has ample example code snippets. We will write our backend modules for the demo project using both the Silva framework and ModelView. Please note that Silva is a third-party contributed package whereas ModelView is supported by Curry out of the box.

The ModelView framework

This is a new framework that renders data in a collapsible list format. Typically, a view will consist of a list of data rows similar to the rows of a table. A row of the list can be expanded to reveal another nested view. This view can be either a list or a form or some HTML content. The picture below is an example of a module using the ModelView framework.

In our series, we will focus more on the ModelView framework rather than Flexigrid since it is the recommended framework. In your projects, you are free to use either technologies according to your requirements.

In the next chapter we will construct a backend module to capture data for cities.

results matching ""

    No results matching ""