简体   繁体   中英

Symfony2 Doctrine: ContextErrorException: Catchable Fatal Error: Object of class DateTime could not be converted to string

In my Symfony2 project I have the following query in my ProductRepository.php :

$dateNow = new \DateTime();
$query = $this->createQueryBuilder('p')
            ->update('MyBundle\Products', 'p')
            ->set('p.published', $dateNow)
            ->getQuery();

$query->execute();

ProductEntity.php:

 /**
     * Set published
     *
     * @param \DateTime $published
     * @return Product
     */
    public function setPublished($published)
    {
        $this->published = $published;

        return $this;
    }

ERROR:

ContextErrorException: Catchable Fatal Error: Object of class DateTime could not be converted to string

In other posts I already read something about toString methods that need to be integrated, but I don't know where to implement it...

Try using parameters in your QueryBuilder :

$query = $this->createQueryBuilder('p')
        ->update('MyBundle\Products', 'p')
        ->set('p.published', ':dateNow')
        ->setParameter('dateNow', $dateNow)
        ->getQuery();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM