I wrote a simple one just now ... in case someone else need it, here it is
class sfPropelRecordExistsValidator extends sfValidator
{
public function execute (&$value, &$error)
{
$class = $this->getParameter('class');
$column = $this->getParameter('column');
$class_peer = $class.'Peer';
$table_name = constant($class_peer.'::TABLE_NAME');
$c = new Criteria();
$c->add($table_name.'.'.$column, $value);
$result = call_user_func(array($class_peer, 'doSelect'), $c);
if ($result)
{
return true;
}
else
{
$error = $this->getParameter('error_msg');
return false;
}
}
public function initialize ($context, $parameters = null)
{
// Initialize parent
parent::initialize($context);
// Set default parameters value
$this->setParameter('column', 'ID');
// Set parameters
$this->getParameterHolder()->add($parameters);
return true;
}
}
To use it in validation yml file:
age_bracket_id:
required:
msg: Required
sfPropelRecordExistsValidator:
class: AgeBracket
column: ID
error_msg: Required, please select one
On Tue, Apr 21, 2009 at 3:20 PM, Eno <[email protected]> wrote:
>
> On Tue, 21 Apr 2009, Sid Bachtiar wrote:
>
>> Can't seems to find a validator for Symfony 1.0 for checking if an ID
>> exists in a table. Anyone knows if that exists in Symfony 1.0? A
>> plugin or something?
>
> Last time I had a similar need, I wrote my own validator, but I would love
> to know if there's another way.
>
>
> --
>
>
>
> >
>
--
Blue Horn Ltd - System Development
http://bluehorn.co.nz
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"symfony users" 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/symfony-users?hl=en
-~----------~----~----~----~------~----~------~--~---