Thanks. I this was too obvious not to be in there already. I just need
to rtfm a little more closely.


Mark

On Sun, Apr 13, 2008 at 6:33 AM, Matthew Weier O'Phinney
<[EMAIL PROTECTED]> wrote:
> -- Mark Wright <[EMAIL PROTECTED]> wrote
>  (on Saturday, 12 April 2008, 07:37 PM -0600):
>
>
> > I've recently started using Zend_Form and like it quite a bit, but I
>  > am having issues with setting values for form elements. I like
>  > extending Zend_Form and creating the form in the init method, but if I
>  > am creating a form where people can edit information that is already
>  > in the database I don't see a good way to pass that information to the
>  > form class. I could just use isValid to populate it, but that doesn't
>  > seem right since I don't actually want to validate anything. After
>  > all, if the data already exists it should be valid. It seems that a
>  > setValues method would be better but I don't see any such method.
>  >
>  > What I'm considering is adding a static variable to my form classes
>  > which will contain the data and a static method which I would pass
>  > that data to. That method would then set the variable and instantiate
>  > the class. When setting the form elements in the init method it would
>  > check if values exist in the variable and use them. Then the method
>  > would return the form class instance. I think this is a fine work
>  > around, but I think it would be better if Zend_Form had a method that
>  > could set all values without having to validate it as well.
>  >
>  > So basically, I am looking to do something like this:
>  >
>  > $formObj = Form::getForm($arrayOfValues);
>  >
>  > When I would rather do this:
>  >
>  > $formObj = new Form;
>  > $formObj->setValues($arrayOfValues);
>  >
>  > Am I missing something or does that functionality just not exist?
>
>  Umm -- setDefaults() and populate() do exactly this already... ;-)
>
>  --
>  Matthew Weier O'Phinney
>  Software Architect       | [EMAIL PROTECTED]
>  Zend - The PHP Company   | http://www.zend.com/
>



-- 
Have fun or die trying - but try not to actually die.

Reply via email to