In this chapter, we have covered:
- Some rules of thumb about when to consider using a relational database instead of the ZODB
- How to connect to a relational database using the SQLAlchemy library
- How to create and register a new Plone control panel page
- Some design principles for abstracting database operations into utilities
- A few tips for testing database operations
- Some examples of how to integrate database-backed views and forms into the Plone user interface
Of course, we have just scratched the surface of what SQLAlchemy can do. You are encouraged to read its documentation, found at http://sqlalchemy.org.
In the next chapter, we enable members of the public to make ticket reservations using the views created in this chapter, when we design ...