Table of Contents : El manual
- 1 Principios básicos de CakePHP
- 2 Developing with CakePHP
- 2.1 Requerimientos
- 2.2 Installation Preparation
- 2.3 Installation
- 2.4 Configuration
- 2.5 Controllers
- 2.5.1 Introducción
- 2.5.2 Controller Attributes
- 2.5.3 Controller Methods
- 2.6 Components
- 2.7 Modelos
- 2.7.1 Introducción
- 2.7.2 Automagic Model Fields
- 2.7.3 Model Attributes
- 2.7.4 Model Methods
- 2.7.5 Associations
- 2.7.6 DataSources
- 2.7.7 Behaviors
- 2.8 Views
- 2.9 Helpers
- 2.10 Scaffolding
- 2.11 The CakePHP Console
- 2.12 Code Generation with Bake
- 2.13 Plugins
- 2.14 Global Constants and Functions
- 3 Common Tasks With CakePHP
- 3.1 Data Validation
- 3.1.1 Simple Rules
- 3.1.2 One Rule Per Field
- 3.1.3 Multiple Rules per Field
- 3.1.4 Built-in Validation Rules
- 3.1.4.1 alphaNumeric
- 3.1.4.2 between
- 3.1.4.3 blank
- 3.1.4.4 cc
- 3.1.4.5 comparison
- 3.1.4.6 date
- 3.1.4.7 decimal
- 3.1.4.8 email
- 3.1.4.9 equalTo
- 3.1.4.10 extension
- 3.1.4.11 file
- 3.1.4.12 ip
- 3.1.4.13 isUnique
- 3.1.4.14 minLength
- 3.1.4.15 maxLength
- 3.1.4.16 money
- 3.1.4.17 multiple
- 3.1.4.18 numeric
- 3.1.4.19 phone
- 3.1.4.20 postal
- 3.1.4.21 range
- 3.1.4.22 ssn
- 3.1.4.23 url
- 3.1.5 Custom Validation Rules
- 3.1.6 Validating Data from the Controller
- 3.2 Data Sanitization
- 3.3 Error Handling
- 3.4 Debugging
- 3.5 Caching
- 3.6 Logging
- 3.7 Testing
- 3.8 Localization & Internationalization
- 3.9 Pagination
- 3.1 Data Validation
- 4 Built-in Components
- 4.1 Access Control Lists
- 4.2 Authentication
- 4.3 Sessions
- 4.4 Benefits
- Responding To Requests
- 4.6 Basic HTTP Authentication
- 4.7 Controller
- 6 Using the Component
- 6.1 Built-in Helpers
- 6.1.1 Forms
- 6.1.2 $options[‘default’]
- 6.1.3 Closing the Form
- 6.1.3.1 Automagic Form Elements
- 6.1.3.2 $options[‘type’]
- 6.1.3.3 $options[‘before’], $options[‘between’] and $options[‘after’]
- 6.1.3.4 $options[‘options’]
- 6.1.3.5 $options[‘multiple’]
- 6.1.3.6 $options[‘maxLength’]
- 6.1.3.7 $options[‘div’]
- 6.1.3.8 $options[‘label’]
- 6.1.3.9 $options[‘id’]
- 6.1.3.10 $options[‘error’]
- 6.1.3.11 $options[‘selected’]
- 6.1.3.12 $options[‘rows’], $options[‘cols’]
- 6.1.3.13 $options[‘empty’]
- 6.1.3.14 $options[‘timeFormat’]
- 6.1.4 $options[‘dateFormat’]
- 6.1.5 File Fields
- 6.2 Form Element-Specific Methods
- 6.3 XML
- 6.4 Inserting Well-Formatted elements
- 6.5 AJAX
- 6.6 Methods
- 6.7 Clearing the Cache
- 6.8 Form
- 6.9 format
- 6.10 Text
- 6.1 Built-in Helpers
- 7 Testing Time
- 8 Examples
- 8.1 The CakePHP Blog Tutorial
- 8.2 Getting Cake
- 8.3 Creating the Blog Database
- 8.4 Cake Database Configuration
- 8.5 Optional Configuration
- 8.6 A Note on mod_rewrite
- 8.7 Create a Post Model
- 8.8 Create a Posts Controller
- 8.9 Creating Post Views
- 8.10 Adding Posts
- 8.11 Data Validation
- 8.12 Deleting Posts
- 8.13 Editing Posts
- 8.14 Routes
- 9 Conclusion
- 10 Simple User Authentication
Extensiones de los Modelos
Del mismo modo, los Comportamientos [Behaviors] son formas de añadir funcionalidad común entre los modelos. Por ejemplo, si almacena datos de los usuarios en una estructura de árbol, puede especificar que su modelo de usuario se comporte como un árbol, y obtener libre funcionalidad para eliminar, añadir, y mover nodos en la estructura de árbol subyacente.
Los modelos también cuentan con el apoyo de otra clase llamada DataSource (Origen de datos). Los DataSources son una abstracción que permite a los modelos manipular diferentes tipos de datos en forma consistente. Si bien la principal fuente de datos en una aplicación CakePHP es a menudo una base de datos, puede escribir DataSources adicionales que le permitan a sus modelos representar canales RSS, archivos CSV, entradas LDAP, o eventos iCal. Los DataSources le permiten asociar registros de diferentes fuentes: en lugar de limitarse sólo a uniones [joins] SQL, los DataSources le permiten decirle a su modelo LDAP que está asociado a muchos eventos iCal.
Así como los controladores, los modelos también incluyen callbacks:
- beforeFind()
- afterFind()
- beforeValidate()
- beforeSave()
- afterSave()
- beforeDelete()
- afterDelete()
Los nombres de estos métodos deben ser lo suficientemente descriptivos para que sepa lo que hacen. Asegúrese de obtener los detalles en el capítulo acerca de los modelos.

login to add a comment