2016-01-14 6 views
0

У меня странная проблема при попытке визуализации объекта в symfony2 easyadminBundle, я получил пустой экран без каких-либо ошибок, при попытке перечислить сущность «Объявления», которая имеет отношение «много к одному», корабль с страницами сущностей », где страница содержит много объявлений. Однако, если я изменил параметр действия в URL-адресе &action=new вместо &action=list, он отобразит форму, но после сохранения ее даст мне тот же пустой экран! Мои страницы Entity:symfony2-easyadmin пустая ошибка пустого экрана

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

/** 
* @var integer 
* 
* @ORM\Column(name="id", type="integer") 
* @ORM\Id 
* @ORM\GeneratedValue(strategy="IDENTITY") 
*/ 
private $id; 



/*@ORM\OneToMany(targetEntity="Ads", mappedBy="pages") 
* 
*/ 

protected $ads; 

public function __construct() 
{ 
    $this->ads = new ArrayCollection(); 
}  
} 

Объявления Entity:

/** 
* Ads 
* 
* @ORM\Table(name="ads") 
* @ORM\Entity 
*/ 
class Ads 
{ 



/** 
* @var integer 
* 
* @ORM\Column(name="page_id", type="integer", nullable=false) 
*/ 
private $page_id ; 


/** 
* @var string 
* 
* @ORM\Column(name="ad_text", type="text", nullable=false) 
*/ 
private $adText; 

/** 
* @var integer 
* 
* @ORM\Column(name="id", type="integer") 
* @ORM\Id 
* @ORM\GeneratedValue(strategy="IDENTITY") 
*/ 
private $id; 



/** 
* @ORM\ManyToOne(targetEntity="Pages", inversedBy="ads") 
* @ORM\JoinColumn(name="page_id", referencedColumnName="id") 
*/ 

private $page_ad; 


} 
+0

Ваш блок 'phpdoc' $ ads выглядит неправильно. Он должен начинаться с '/ **' – zerkms

ответ

0

Ваша конфигурация выглядит "не сложно", поэтому он должен работать, как ожидалось. Ошибка «пустой страницы» действительно странная. Мы предоставляем данные try...catch, чтобы избежать каких-либо проблем, когда мы не можем получить доступ к этой информации. Кроме того, мы также воспользовались исключениями для отображения настроенных страниц ошибок.

Вы видели сообщение об ошибке в вашем файле dev.log?

Вы также можете сделать следующее. Создать простейшую конфигурацию для list зрения Ads объекта следующим образом:

easy_admin: 
    entities: 
     Ads: 
      list: 
       fields: ['id'] 

Если эта работа, попробуйте добавить несколько полей по одному, пока не найдете ошибку.

+0

, к сожалению, это не сработало, странно, что действия 'new, show' работают при их изменении, и в dev_log нет ничего, есть ли способ отладить это ? – hero789

+0

Лучший способ отладки - добавить несколько вызовов 'dump()' к расширению Twig, который отображает информацию. Это расширение находится в файле 'Twig/EasyAdminTwigExtension.php', а метод -' renderEntityField() '. Попробуйте добавить 'dump ($ entityConfiguration, $ fieldName)' в строке 117, чтобы увидеть, какая информация выводится, а затем попытайтесь добавить больше 'dump()' ниже, чтобы увидеть, когда это произойдет. –

+0

В моем случае пустая страница была представлена, когда 1) объект находится в отношении OneToMany и 2) включает поле ToMany, имеющее> 100 тыс. Строк. Устранение поля ToMany восстановило отображение. – geoB