Foros del Web » Programando para Internet » PHP » Symfony »

SonatAdminBundle y entidades relacionadas N:N

Estas en el tema de SonatAdminBundle y entidades relacionadas N:N en el foro de Symfony en Foros del Web. Para la administración de mi proyecto he querido usar SonataAdminBundle, ya que la gente habla muy bien de Sonata-Project y la verdad es que funciona ...
  #1 (permalink)  
Antiguo 09/05/2014, 08:58
Avatar de bNd170  
Fecha de Ingreso: agosto-2009
Ubicación: $this->setLocation('Valencia', 'Spain');
Mensajes: 365
Antigüedad: 14 años, 6 meses
Puntos: 13
SonatAdminBundle y entidades relacionadas N:N

Para la administración de mi proyecto he querido usar SonataAdminBundle, ya que la gente habla muy bien de Sonata-Project y la verdad es que funciona muy bien con cosas básicas.

Tengo un sistema de contenido creado, cada contenido debe estar ligado al menos a una categoría, aunque pueden ser más de una.

Vale, mi clase de contenido tiene esto como relación (Es una relación N:N bidireccional tal y como especifica la documentación de Doctrine)

Código PHP:
<?php
class Content
{
    
/**
     * @ORM\ManyToMany(targetEntity="Category", inversedBy="content")
     * @ORM\JoinTable(name="content_categories")
     **/
    
private $categories;

    public function 
__construct() {
        
$this->vategories = new DoctrineCommonCollectionsArrayCollection();
    }
Y la clase de Categoria.

Código PHP:
class Category
{
    
    
/**
     * @ORM\ManyToMany(targetEntity="Content", mappedBy="categories")
     **/
    
private $content;

    public function 
__construct() {
        
$this->content = new DoctrineCommonCollectionsArrayCollection();
    } 
Hasta aqui perfecto, la cuestión es que cuando a SonataAdmin le pido que me muestre un control en "configureFormFields" para seleccionar las categorias o categoria que asociar al contenido, me lanza un error.

Class doest not exists (ERROR 500)

Código PHP:
    protected function configureFormFields(FormMapper $formMapper)
    {
        
$formMapper
            
->add('titleEs''text', array('label' => 'label.title.spanish'))
            ->
add('contentEs''textarea', array('label' => 'label.content.spanish'))
            ->
add('titleEn''text', array('label' => 'label.title.english'))
            ->
add('contentEn''textarea', array('label' => 'label.content.english'))
            ->
add('category''sonata_type_model', array('expanded' => true'by_reference' => false'multiple' => true))
        ;
    } 
Los campos de titleEs, contentEs, titleEn y contentEn son campos para distinguir los idiomas.

En la clase category pasa igual, son 4 campos, nameEs, nameEn, slugEs y slugEn.

Si alguien puede explicarme esto se lo agradecería.

Saludos.

Etiquetas: entidades, relacionadas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:34.