使用数据库数据填充Selectbox - Forms + Doctrine + Symfony 3

时间:2016-04-28 13:33:43

标签: php doctrine entity symfony-forms symfony

我正在尝试使用Doctrine查询的结果列表填充我的表单 但是我收到了这个错误:

Catchable Fatal Error: Object of class AppBundle\Entity\Parceiros could not be converted to string

这是我的表格CoberturasType

namespace AppBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;


class CoberturasType extends AbstractType
{
    /**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('descricao')
            ->add('parceiro', EntityType::class, [
                'class'=>'AppBundle:Parceiros',
                ])
        ;
    }

    /**
     * @param OptionsResolver $resolver
     */
    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'AppBundle\Entity\Coberturas'
        ));
    }
}

这是我的CoberturasEntity

<?php

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * Coberturas
 *
 * @ORM\Table(name="coberturas")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\CoberturasRepository")
 * @ORM\Entity()
 * @ORM\HasLifecycleCallbacks()
 */
class Coberturas
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @ORM\ManyToOne(targetEntity="Parceiros")
     * @ORM\JoinColumn(name="parceiro", referencedColumnName="id", nullable=false)
     */
    protected $parceiro;

    /**
     * @var string
     *
     * @ORM\Column(name="descricao", type="string", length=120)
     */
    private $descricao;

    /**
     * @var bool
     *
     * @ORM\Column(name="_ativo", type="boolean")
     */
    private $ativo;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="created", type="datetime")
     */
    private $created;

    /**
     * @var string
     *
     * @ORM\Column(name="updated", type="datetime")
     */
    private $updated;

    /**
     * @var bool
     *
     * @ORM\Column(name="_deletado", type="boolean")
     */
    private $deletado;


    /**
     * Get id
     *
     * @return int
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set descricao
     *
     * @param string $descricao
     *
     * @return Coberturas
     */
    public function setDescricao($descricao)
    {
        $this->descricao = $descricao;

        return $this;
    }

    /**
     * Get descricao
     *
     * @return string
     */
    public function getDescricao()
    {
        return $this->descricao;
    }

    /**
     * Set ativo
     *
     * @param boolean $ativo
     *
     * @return Coberturas
     */
    public function setAtivo($ativo)
    {
        $this->ativo = $ativo;

        return $this;
    }

    /**
     * Get ativo
     *
     * @return bool
     */
    public function getAtivo()
    {
        return $this->ativo;
    }

    /**
     * Set created
     *
     * @param \DateTime $created
     *
     * @return Coberturas
     */
    public function setCreated($created)
    {
        $this->created = $created;

        return $this;
    }

    /**
     * Get created
     *
     * @return \DateTime
     */
    public function getCreated()
    {
        return $this->created;
    }

    /**
     * Set updated
     *
     * @param string $updated
     *
     * @return Coberturas
     */
    public function setUpdated($updated)
    {
        $this->updated = $updated;

        return $this;
    }

    /**
     * Get updated
     *
     * @return string
     */
    public function getUpdated()
    {
        return $this->updated;
    }

    /**
     * Set deletado
     *
     * @param boolean $deletado
     *
     * @return Coberturas
     */
    public function setDeletado($deletado)
    {
        $this->deletado = $deletado;

        return $this;
    }

    /**
     * Get deletado
     *
     * @return bool
     */
    public function getDeletado()
    {
        return $this->deletado;
    }

    /**
    * @ORM\PrePersist
    */
    public function setCreatedValue()
    {
        $this->created = new \DateTime();
    }
    /**
    * @ORM\postUpdate
    */
    public function setUpdatedValue()
    {
        $this->updated = new \DateTime();
    }

    /**
     * Set parceiro
     *
     * @param \AppBundle\Entity\Parceiros $parceiro
     *
     * @return Coberturas
     */
    public function setParceiro(\AppBundle\Entity\Parceiros $parceiro = null)
    {
        $this->parceiro = $parceiro;

        return $this;
    }

    /**
     * Get parceiro
     *
     * @return \AppBundle\Entity\Parceiros
     */
    public function getParceiro()
    {
        return $this->parceiro;
    }
}

这是我的ParceirosEntity

<?php

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * Parceiros
 *
 * @ORM\Table(name="parceiros")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\ParceirosRepository")
 * @ORM\Entity()
 * @ORM\HasLifecycleCallbacks()
 */
class Parceiros
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     * @ORM\OneToMany(targetEntity="Coberturas", mappedBy="parceiro")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="razaoSocial", type="string", length=255)
     */
    private $razaoSocial;

    /**
     * @var string
     *
     * @ORM\Column(name="nomeFantasia", type="string", length=255, nullable=true)
     */
    private $nomeFantasia;

    /**
     * @var string
     *
     * @ORM\Column(name="cnpj", type="string", length=17, nullable=true)
     */
    private $cnpj;

    /**
     * @var string
     *
     * @ORM\Column(name="inscEstadual", type="string", length=60, nullable=true)
     */
    private $inscEstadual;

    /**
     * @var string
     *
     * @ORM\Column(name="cep", type="string", length=9, nullable=true)
     */
    private $cep;

    /**
     * @var string
     *
     * @ORM\Column(name="endereco", type="string", length=160, nullable=true)
     */
    private $endereco;

    /**
     * @var string
     *
     * @ORM\Column(name="numero", type="string", length=30, nullable=true)
     */
    private $numero;

    /**
     * @var string
     *
     * @ORM\Column(name="complemento", type="string", length=30, nullable=true)
     */
    private $complemento;

    /**
     * @var string
     *
     * @ORM\Column(name="bairro", type="string", length=80, nullable=true)
     */
    private $bairro;

    /**
     * @var string
     *
     * @ORM\Column(name="cidade", type="string", length=100, nullable=true)
     */
    private $cidade;

    /**
     * @var string
     *
     * @ORM\Column(name="estado", type="string", length=2, nullable=true)
     */
    private $estado;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="created", type="datetime", nullable=true)
     */
    private $created;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="updated", type="datetime", nullable=true)
     */
    private $updated;

    /**
     * @var bool
     *
     * @ORM\Column(name="ativo", type="boolean", nullable=true)
     */
    private $ativo = 1;

    /**
     * @var bool
     *
     * @ORM\Column(name="deletado", type="boolean", nullable=true)
     */
    private $deletado = 0;

    /**
     * Get id
     *
     * @return int
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set razaoSocial
     *
     * @param string $razaoSocial
     *
     * @return Parceiros
     */
    public function setRazaoSocial($razaoSocial)
    {
        $this->razaoSocial = $razaoSocial;

        return $this;
    }

    /**
     * Get razaoSocial
     *
     * @return string
     */
    public function getRazaoSocial()
    {
        return $this->razaoSocial;
    }

    /**
     * Set nomeFantasia
     *
     * @param string $nomeFantasia
     *
     * @return Parceiros
     */
    public function setNomeFantasia($nomeFantasia)
    {
        $this->nomeFantasia = $nomeFantasia;

        return $this;
    }

    /**
     * Get nomeFantasia
     *
     * @return string
     */
    public function getNomeFantasia()
    {
        return $this->nomeFantasia;
    }

    /**
     * Set cnpj
     *
     * @param string $cnpj
     *
     * @return Parceiros
     */
    public function setCnpj($cnpj)
    {
        $this->cnpj = $cnpj;

        return $this;
    }

    /**
     * Get cnpj
     *
     * @return string
     */
    public function getCnpj()
    {
        return $this->cnpj;
    }

    /**
     * Set inscEstadual
     *
     * @param string $inscEstadual
     *
     * @return Parceiros
     */
    public function setInscEstadual($inscEstadual)
    {
        $this->inscEstadual = $inscEstadual;

        return $this;
    }

    /**
     * Get inscEstadual
     *
     * @return string
     */
    public function getInscEstadual()
    {
        return $this->inscEstadual;
    }

    /**
     * Set cep
     *
     * @param string $cep
     *
     * @return Parceiros
     */
    public function setCep($cep)
    {
        $this->cep = $cep;

        return $this;
    }

    /**
     * Get cep
     *
     * @return string
     */
    public function getCep()
    {
        return $this->cep;
    }

    /**
     * Set endereco
     *
     * @param string $endereco
     *
     * @return Parceiros
     */
    public function setEndereco($endereco)
    {
        $this->endereco = $endereco;

        return $this;
    }

    /**
     * Get endereco
     *
     * @return string
     */
    public function getEndereco()
    {
        return $this->endereco;
    }

    /**
     * Set numero
     *
     * @param string $numero
     *
     * @return Parceiros
     */
    public function setNumero($numero)
    {
        $this->numero = $numero;

        return $this;
    }

    /**
     * Get numero
     *
     * @return string
     */
    public function getNumero()
    {
        return $this->numero;
    }

    /**
     * Set complemento
     *
     * @param string $complemento
     *
     * @return Parceiros
     */
    public function setComplemento($complemento)
    {
        $this->complemento = $complemento;

        return $this;
    }

    /**
     * Get complemento
     *
     * @return string
     */
    public function getComplemento()
    {
        return $this->complemento;
    }

    /**
     * Set bairro
     *
     * @param string $bairro
     *
     * @return Parceiros
     */
    public function setBairro($bairro)
    {
        $this->bairro = $bairro;

        return $this;
    }

    /**
     * Get bairro
     *
     * @return string
     */
    public function getBairro()
    {
        return $this->bairro;
    }

    /**
     * Set cidade
     *
     * @param string $cidade
     *
     * @return Parceiros
     */
    public function setCidade($cidade)
    {
        $this->cidade = $cidade;

        return $this;
    }

    /**
     * Get cidade
     *
     * @return string
     */
    public function getCidade()
    {
        return $this->cidade;
    }

    /**
     * Set estado
     *
     * @param string $estado
     *
     * @return Parceiros
     */
    public function setEstado($estado)
    {
        $this->estado = $estado;

        return $this;
    }

    /**
     * Get estado
     *
     * @return string
     */
    public function getEstado()
    {
        return $this->estado;
    }

    /**
     * Set created
     *
     * @param \DateTime $created
     *
     * @return Parceiros
     */
    public function setCreated($created)
    {
        $this->created = $created;

        return $this;
    }

    /**
     * Get created
     *
     * @return \DateTime
     */
    public function getCreated()
    {
        return $this->created;
    }

    /**
     * Set updated
     *
     * @param \DateTime $updated
     *
     * @return Parceiros
     */
    public function setUpdated($updated)
    {
        $this->updated = $updated;

        return $this;
    }

    /**
     * Get updated
     *
     * @return \DateTime
     */
    public function getUpdated()
    {
        return $this->updated;
    }

    /**
     * Set ativo
     *
     * @param boolean $ativo
     *
     * @return Parceiros
     */
    public function setAtivo($ativo)
    {
        $this->ativo = $ativo;

        return $this;
    }

    /**
     * Get ativo
     *
     * @return bool
     */
    public function getAtivo()
    {
        return $this->ativo;
    }

    /**
     * Set deletado
     *
     * @param boolean $deletado
     *
     * @return Parceiros
     */
    public function setDeletado($deletado)
    {
        $this->deletado = $deletado;

        return $this;
    }

    /**
     * Get deletado
     *
     * @return bool
     */
    public function getDeletado()
    {
        return $this->deletado;
    }

    /**
    * @ORM\PrePersist
    */
    public function setCreatedValue()
    {
        $this->created = new \DateTime();
    }
    /**
    * @ORM\postUpdate
    */
    public function setUpdatedValue()
    {
        $this->updated = new \DateTime();
    }

}

Error image

我只想展示一个SelectBox,供用户选择&#34; parceiro&#34;他想插入一个新的&#34; cobertura&#34;。

感谢您的帮助...

0 个答案:

没有答案