It has to do with Doctrine because we use PDO. I assume it is because the
sfForm contains an instance of a Doctrine_Record and it contains an instance
of the Doctrine_Connection which holds a PDO instance. We need to implement
the sleep method to unset the PDO instance before serialization. Can you
create a ticket for this? Thanks, Jon

On Tue, Dec 23, 2008 at 2:48 AM, Jeremy Benoist <[email protected]>wrote:

>
> Jon,
>
> Do you know if it is related to sfForm or to Doctrine ?
> For now, the only solution I found is to add an empty __sleep method
> in symfony/lib/form/sfForm.class.php. All other action in doctrine
> file didn't help.
>
> Thanks,
> Jeremy
>
> On 10 déc, 23:17, "Jonathan Wage" <[email protected]> wrote:
> > Can you create a ticket for this? We need to fix this in the form
> framework
> > so the PDO instance is removed from the form before being serialized.
> >
> > Thanks, Jon
> >
> > On Wed, Dec 10, 2008 at 3:14 AM, Jeremy Benoist <
> [email protected]>wrote:
> >
> >
> >
> > > Anybody had already experienced this problem?
> > > If I want to keep cache enabled, I see only one solution : avoid all
> sfForm
> > > instance parameter from include_partial.
> > > Maybe I will try to put $form in session or request, we'll see.
> > > But it won't in the way of refactoring data and good practice I think
> :-/
> >
> > > J.
> >
> > > On Mon, Dec 8, 2008 at 5:59 PM, Jeremy Benoist <
> [email protected]>wrote:
> >
> > >> Hi,
> >
> > >> I recently enable cache on my website.
> >
> > >> /config/settings.yml
> > >> all:
> > >>  cache: on
> >
> > >> /apps/frontend/config/cache.yml
> > >> default:
> > >>  enabled: off
> >
> > >> I activate cache for some module and I did nothing for other one. So I
> > >> assume that if I don't have cache.yml file for a module, cache isn't
> > >> enabled. (Even if I have a cache.yml with all: enabled: off, I still
> > >> have the problem).
> >
> > >> In template registrationSuccess.php, I have :
> >
> > >> <?php include_partial('customer/customerForm',array('form'=>$form,
> > >> 'passwords'=>true))?>
> >
> > >> Where $form is an instance of CustomerForm.
> >
> > >> I got this error when I go on customer/registration :
> > >> You cannot serialize or unserialize PDO instances
> >
> > >> Full stack trace is available here :http://pastebin.com/mc8ce397
> >
> > >> The only solution is to disable cache...
> > >> But I don't understand why symfony try to put this partial in cache as
> > >> I don't define any cache for this module.
> >
> > >> Thanks in advance for your help
> >
> > >> J.
> >
> > --
> > Jonathan H. Wage
> > Open Source Software Developer &
> Evangelisthttp://www.jwage.comhttp://www.doctrine-project.orghttp://
> www.symfony-project.org
> >
>


-- 
Jonathan H. Wage
Open Source Software Developer & Evangelist
http://www.jwage.com
http://www.doctrine-project.org
http://www.symfony-project.org

--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to