Bolt\Storage\Field\Type\TemplateFieldsType::persist PHP Метод

persist() публичный Метод

public persist ( Bolt\Storage\QuerySet $queries, $entity )
$queries Bolt\Storage\QuerySet
    public function persist(QuerySet $queries, $entity)
    {
        $key = $this->mapping['fieldname'];
        $qb =& $queries[0];
        $valueMethod = 'serialize' . ucfirst($key);
        $value = $entity->{$valueMethod}();
        $type = $this->getStorageType();
        if (null !== $value) {
            $metadata = $this->buildMetadata($entity);
            $value = $this->serialize($value, $metadata);
            $value = $type->convertToDatabaseValue($value, $this->getPlatform());
        } else {
            $value = isset($this->mapping['default']) ? $this->mapping['default'] : null;
        }
        $qb->setValue($key, ':' . $key);
        $qb->set($key, ':' . $key);
        $qb->setParameter($key, $value);
    }