Valeurs par défaut des Widgets via le construteur de `sfForm`
bon j'ai trouvé qu'il y avait moyen de saisir des valeurs par défaut à la construction du formulaire:
Listing 1-14 - Valeurs par défaut des Widgets via le construteur de `sfForm`
Code:
$this->form = new ContactForm(array('email' => 'Votre email ici', 'name' => 'Votre nom ici'));
sauf que quand on teste, on a ce message:
Code:
The "GrpeChqDejListForm" form only accepts a "GrpeChqDejList" object.
en cherchant sur le net j'ai trouvé le constructeur de sfForm:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
abstract class sfFormDoctrine extends sfForm
{
protected
$isNew = true,
$object = null;
/**
* Constructor.
*
* @param BaseObject A Doctrine object used to initialize default values
* @param array An array of options
* @param string A CSRF secret (false to disable CSRF protection, null to use the global CSRF secret)
*
* @see sfForm
*/
public function __construct($object = null, $options = array(), $CSRFSecret = null)
{
$class = $this->getModelName();
if (!$object)
{
$this->object = new $class();
}
else
{
if (!$object instanceof $class)
{
throw new sfException(sprintf('The "%s" form only accepts a "%s" object.', get_class($this), $class));
}
$this->object = $object;
$this->isNew = !$this->object->exists();
}
parent::__construct(array(), $options, $CSRFSecret);
$this->updateDefaultsFromObject();
} |
effectivemement le premier parametre attend un object et non un array, mais la je doit avouer que je bloque, comment transformer cette array en objet accepté par le contructeur ?