Learning project – the book checkout module
The master data structures for the library application are in place. Now, we want to add transactions to our system. We would like library members to be able to borrow books. This means we should keep track of book availability and returns.
Each book checkout has a life cycle, from the moment they are created to the moment when the books are returned. It is a simple workflow that can be represented as a Kanban board, where the several stages are presented as columns, and the work items from the left-hand column are sent to the right until they are completed.
This chapter focuses on the data model and business logic that are needed to support this feature.
The basic user interface will be discussed in Chapter 10, Backend Views – Designing the User Interface, while the Kanban views will be discussed in Chapter 11, Kanban Views and Client-Side QWeb. Let's quickly have a rundown of the data model.