Book Image

CakePHP 2 Application Cookbook

Book Image

CakePHP 2 Application Cookbook

Overview of this book

Table of Contents (20 chapters)
CakePHP 2 Application Cookbook
Credits
Foreword
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Containing models


Containable is one of the must-have core behaviors in CakePHP. A behavior is added to a model to reuse logic, allowing you to configure your models by adding or removing specific behaviors to dynamically include or modify features or capabilities.

Using Containable allows you to determine which associations are retrieved for a specific find operation. So, instead of retrieving all the associated models on each find operation, you have the ability to select which specific associations you need for your next query. This is especially useful to optimize model queries when a large number of associations are defined. You also have the power to filter based on specific conditions and define which fields should be retrieved. When you combine the Containable behavior with associations, you'll resolve most of your data-retrieval needs.

Getting ready

For this recipe, we'll first define a new table and change our existing one using the following SQL statements:

CREATE TABLE categories...