Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Kaio Alves

Dificuldade com mapeamento usando Doctrine

Recommended Posts

Olá galera, recentemente comecei a estudar sobre o framework zend utilizando o mapeamento com doctrine.

Estou enfrentando um problema que a dias não consigo resolver.

A seguinte mensagem de erro é lançada:

Expected value of type "Application\Model\Categoria" for association field "Application\Model\Produto#$id_categoria", got "integer" instead.

 

Meu código é o seguinte:

 

Entidade Categoria:

 

<?php
namespace Application\Model;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class Categoria {
/**
* @ORM\Id
* @ORM\GeneratedValue("AUTO")
* @ORM\Column(type="integer", name="id_categoria")
*/
private $id_categoria;
/**
* @ORM\Column(type="string", name="descricao")
*/
private $descricao;
Métodos Getters e Setters dos atributos(...)
Entidade Produto:
<?php
namespace Application\Model;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class Produto{
/**
* @ORM\Id
* @ORM\GeneratedValue("AUTO")
* @ORM\Column(type="integer", name="id_produto")
*/
private $id_produto;
/**
* @ORM\ManyToOne(targetEntity="categoria")
* @ORM\JoinColumn(name="id_categoria", referencedColumnName="id_categoria")
*/
private $id_categoria;
/**
* @ORM\Column(type="string", name="descricao")
*/
private $descricao;
/**
* @ORM\Column(type="decimal", name="preco")
*/
private $preco;
Métodos Getters e Setters dos atributos (...)

 

 

 

Além de tudo, já conferi que no meu banco de dados o atributo id_categoria esta como int, tanto na tabela categoria quanto na tabela produto.

 

Conto com a ajuda de todos.

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você tem que passar um objeto do tipo Categoria, mas pelo que vi está tentando passar somente o id da categoria.

   /**
     * @ORM\ManyToOne(targetEntity="categoria")
     * @ORM\JoinColumn(name="id_categoria", referencedColumnName="id_categoria")
     */
    private $id_categoria;

Da uma olhadinha na Documentação que vai entender melhor

http://doctrine-orm.readthedocs.org/en/latest/reference/association-mapping.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu amigo, meu problema era exatamente este.

Estava trazendo o id_categoria de um formulário e estava tentando passa-lo, ao invés de passar o objeto categoria.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por merlinus
      Saudações,  pretendo fazer um projeto full restful, qual framework vcs recomendam? tava pensando e usar o Codignite 4
    • Por Alessandro Bodão
      Boa noite irmandade!
       
      Ando reparando de alguns anos pra cá, uma forte tendência em que sites bem dinâmicos e interativos transitam de uma página pra outra sem que a outra página se quer passe por um processo de carregamento, você clica, simplesmente acontece algumas transições nos elementos da página, e de repente, você está em outra página, outro url. De forma suave, nada é carregado, apenas algo acontece e você já está em outra página.
       
      Gostaria de saber como isso é feito pra aplicar em um site que estou desenvolvendo, se é algum framework, alguma ferramenta além do JavaScript...
       
      Trouxe um belo exemplo: https://www.traffic.productions/
       
      Se você chegou até aqui, agradeço desde já!
    • Por Luiz Henrique
      Olá;
       
      Estrou tentando importar a biblioteca Jquery em um projeto que utilizo o slim framework, mas a biblioteca não funciona se a importação dela for na index, (o slim está usando sistema de rotas), não sei se isso influencia em algo, mas para funcionar as aplicações jquery a importação da biblioteca tem que ser na página em uso.
       
      Criei um arquivo teste.js e uma função para dar um alert apenas e funciona até porque o css funciona o problema está com a biblioteca jquery, preciso configurar alguma coisa para que funcione importando ela pela index ou qualquer outro lugar, para que eu possa solicitar apenas 1 vez e não em todas as páginas ao qual utilizarei o jquery?
       
      Obrigado.
    • Por david2007
      Endpointer Framework é um Framework PHP para construção de APIs REST com Programação Procedural.
       
      Todas as regras de negócio são implementadas como Stored Procedures.
       
      http://endpointer.com
       
      Endpointer Framework é Código Aberto sob a licença MIT

    • Por david2007
      Endpointer Framework é um Framework PHP para construção de APIs REST com Programação Procedural.
       
      http://endpointer.com
       
      Endpointer Framework é Código Aberto sob a licença MIT

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.