You will have to set the validation rule during runtime in your model/
controller, like so:
$this->Model->validate['field']['inList'] = array('rule' => array
('inList', $myListVariable));
On Jan 7, 2:06 am, John Andersen <[email protected]> wrote:
> Hi Dave,
>
> Is your rule made in accordance with CakePHP custom validation rules?
> If yes, then I don't see a better solution.
>
> Seehttp://book.cakephp.org/view/150/Custom-Validation-Rules#Adding-your-...
> for the custom validation rules.
>
> Enjoy,
> John
>
> On Jan 7, 7:48 am, "Dave" <[email protected]> wrote:
>
> > Using the inList validation rule I have 2 questions.
>
> > 'rule' => array('inList', array('0', '1', '2','3', '4', '5', '6', '7')),
> > will allow values matching 0 thru 7 anything else is invalid
>
> > So my first question is if I created an variable array of values from a find
> > could i just use 'rule' => array('inList', $myListVariable),
>
> > and if that is possible how do i get the $myListVariable into the validation
> > function?
>
> > Or is better to just stick with what im currently doing. For example I have
> > my country select list and it has a validation 'rule' =>
> > array('checkCountryValues'),
>
> > Model function for the country validation
> > /*
> > Form Modification Validation
> > Checks that entered values for Country are Valid
>
> > */
> > public function checkCountryValues($data)
> > {
> > $valid = false;
> > $model_table = Inflector::classify($this->useTable);
>
> > if (!empty($this->data))
> > {
> > // this section matches values against database
> > $value = array($this->data[$model_table]['country_id']);
> > $results = array_diff($value, $this->Country->find('list',
> > array('fields' => 'id')));
>
> > if (empty($results))
>
> > $valid = true;
> > }
>
> > return $valid;
> > }
>
> > So if anyone messes with the form it returns invalid.
>
> > Ideas?
>
> > Dave
Check out the new CakePHP Questions site http://cakeqs.org and help others with
their CakePHP related questions.
You received this message because you are subscribed to the Google Groups
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected] For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en