This intermediate class, App Model, is empty and if you haven’t created your own is taken from within the /cake/ folder.Overriding the App Model allows you to define functionality that should be made available to all models within your application.

Create your model PHP file in the /app/models/ directory or in a subdirectory of /app/models. By convention it should have the same name as the class; for this example

Cake PHP will dynamically create a model object for you if it cannot find a corresponding file in /app/models.

This also means that if your model file isn’t named correctly (i.e.

Here is a simple example of a model definition in Cake PHP: With just this simple declaration, the Ingredient model is bestowed with all the functionality you need to create queries along with saving and deleting data.

These magic methods come from Cake PHP’s Model class by the magic of inheritance.

The Ingredient model extends the application model, App Model, which extends Cake PHP’s internal Model class.It is this core Model class that bestows the functionality onto your Ingredient model.Models represent data and are used in Cake PHP applications for data access.A model usually represents a database table but can be used to access anything that stores data such as files, LDAP records, i Cal events, or rows in a CSV file. For example, a Recipe may be associated with the Author of the recipe as well as the Ingredient in the recipe. In object-oriented programming a data model is an object that represents a “thing”, like a car, a person, or a house.This section will explain what features of the model can be automated, how to override those features, and what methods and properties a model can have. A blog, for example, may have many blog posts and each blog post may have many comments.It’ll explain the different ways to associate your data. The Blog, Post, and Comment are all examples of models, each associated with another.