Merge branch '1.2' of dev@code.cakephp.org:cakephp into 1.2

This commit is contained in:
mark_story 2009-10-06 09:22:47 -04:00
commit f59e4013c7
3 changed files with 29 additions and 16 deletions

View file

@ -77,8 +77,9 @@ class ContainableBehavior extends ModelBehavior {
* Runs before a find() operation. Used to allow 'contain' setting * Runs before a find() operation. Used to allow 'contain' setting
* as part of the find call, like this: * as part of the find call, like this:
* *
* Model->find('all', array('contain' => array('Model1', 'Model2'))); * `Model->find('all', array('contain' => array('Model1', 'Model2')));`
* *
* {{{
* Model->find('all', array('contain' => array( * Model->find('all', array('contain' => array(
* 'Model1' => array('Model11', 'Model12'), * 'Model1' => array('Model11', 'Model12'),
* 'Model2', * 'Model2',
@ -87,6 +88,7 @@ class ContainableBehavior extends ModelBehavior {
* 'Model32', * 'Model32',
* 'Model33' => array('Model331', 'Model332') * 'Model33' => array('Model331', 'Model332')
* ))); * )));
* }}}
* *
* @param object $Model Model using the behavior * @param object $Model Model using the behavior
* @param array $query Query parameters as set by cake * @param array $query Query parameters as set by cake

View file

@ -757,10 +757,12 @@ class Model extends Overloadable {
$this->schema(); $this->schema();
} }
/** /**
* This function does two things: 1) it scans the array $one for the primary key, * This function does two things:
*
* 1. it scans the array $one for the primary key,
* and if that's found, it sets the current id to the value of $one[id]. * and if that's found, it sets the current id to the value of $one[id].
* For all other keys than 'id' the keys and values of $one are copied to the 'data' property of this object. * For all other keys than 'id' the keys and values of $one are copied to the 'data' property of this object.
* 2) Returns an array with all of $one's keys and values. * 2. Returns an array with all of $one's keys and values.
* (Alternative indata: two strings, which are mangled to * (Alternative indata: two strings, which are mangled to
* a one-item, two-dimensional array using $one for a key and $two as its value.) * a one-item, two-dimensional array using $one for a key and $two as its value.)
* *
@ -1912,14 +1914,19 @@ class Model extends Overloadable {
* second parameter options for finding ( indexed array, including: 'conditions', 'limit', * second parameter options for finding ( indexed array, including: 'conditions', 'limit',
* 'recursive', 'page', 'fields', 'offset', 'order') * 'recursive', 'page', 'fields', 'offset', 'order')
* *
* Eg: find('all', array( * Eg:
* {{{
* find('all', array(
* 'conditions' => array('name' => 'Thomas Anderson'), * 'conditions' => array('name' => 'Thomas Anderson'),
* 'fields' => array('name', 'email'), * 'fields' => array('name', 'email'),
* 'order' => 'field3 DESC', * 'order' => 'field3 DESC',
* 'recursive' => 2, * 'recursive' => 2,
* 'group' => 'type')); * 'group' => 'type'
* ));
* }}}
* *
* Specifying 'fields' for new-notation 'list': * Specifying 'fields' for new-notation 'list':
*
* - If no fields are specified, then 'id' is used for key and 'model->displayField' is used for value. * - If no fields are specified, then 'id' is used for key and 'model->displayField' is used for value.
* - If a single field is specified, 'id' is used for key and specified field is used for value. * - If a single field is specified, 'id' is used for key and specified field is used for value.
* - If three fields are specified, they are used (in order) for key, value and group. * - If three fields are specified, they are used (in order) for key, value and group.

View file

@ -340,9 +340,11 @@ class Set extends Object {
return $out; return $out;
} }
/** /**
* Implements partial support for XPath 2.0. If $path is an array or $data is empty it the call is delegated to Set::classicExtract. * Implements partial support for XPath 2.0. If $path is an array or $data is empty it the call
* is delegated to Set::classicExtract.
*
* #### Currently implemented selectors:
* *
* Currently implemented selectors:
* - /User/id (similar to the classic {n}.User.id) * - /User/id (similar to the classic {n}.User.id)
* - /User[2]/name (selects the name of the second User) * - /User[2]/name (selects the name of the second User)
* - /User[id>2] (selects all Users with an id > 2) * - /User[id>2] (selects all Users with an id > 2)
@ -355,11 +357,13 @@ class Set extends Object {
* - /Comment[text=/cakephp/i] (Selects the all comments that have a text matching the regex /cakephp/i) * - /Comment[text=/cakephp/i] (Selects the all comments that have a text matching the regex /cakephp/i)
* - /Comment/@* (Selects the all key names of all comments) * - /Comment/@* (Selects the all key names of all comments)
* *
* Other limitations: * #### Other limitations:
*
* - Only absolute paths starting with a single '/' are supported right now * - Only absolute paths starting with a single '/' are supported right now
* *
* Warning: Even so it has plenty of unit tests the XPath support has not gone through a lot of real-world testing. Please report * **Warning**: Even so it has plenty of unit tests the XPath support has not gone through a lot of
* Bugs as you find them. Suggestions for additional features to imlement are also very welcome! * real-world testing. Please report Bugs as you find them. Suggestions for additional features to
* implement are also very welcome!
* *
* @param string $path An absolute XPath 2.0 path * @param string $path An absolute XPath 2.0 path
* @param string $data An array of data to extract from * @param string $data An array of data to extract from