我與Symfony2和奏鳴曲管理員一起工作。我有一個實體(新聞),它擁有一個子類別。每個子類別都擁有一個類別,而每個類別都擁有一個類別。 在新聞的添加頁面中,我有一個子類別列表,用於選擇我的子類別以鏈接到我的新聞。我選擇的每一項都格式化這樣的:Symfony2 Sonata Project帶有OneToMany實體的sonata_type_model排序
<li> subcategory (category'affaire) > categoryName </li>.
我想通過AFFAIRE(ASC)的字段進行排序。
這裏是我的formfield定義:
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('subCategory', 'sonata_type_model', array("label" => "Catégorie/Sous Catégorie", "btn_add" => false));
}
一個新聞擁有一個子目錄
一個子目錄自己的一個類別
一類擁有一個AFFAIRE。
我嘗試添加類似:
->add('subCategory', 'sonata_type_model',
array("label" => "Sub Category",
"btn_add" => false
),
array(
'sortable' => 'ordering',
'label' => 'subcategory.category.affaire.code',
))
但沒有什麼變化。有任何想法嗎 ?
分類實體:
class NewsCategory
{
/**
* @var \My\Custom\Foo\Entity\Affaire
*
* @ORM\ManyToOne(targetEntity="\My\Custom\Foo\Entity\Affaire")
* @ORM\JoinColumn(name="affaire_code", referencedColumnName="code")
*/
private $affaire;
- 子目錄實體:
class NewsSubCategory
{
/**
* @var \My\Custom\Foo\Entity\NewsCategory
*
* @ORM\ManyToOne(targetEntity="\My\Custom\Foo\Entity\NewsCategory")
* @ORM\JoinColumn(name="category_ref", referencedColumnName="id")
*
*/
private $category;
- 新聞單位:
class News
{
/**
* @var \My\Custom\Foo\Entity\NewsSubCategory
*
* @ORM\ManyToOne(targetEntity="\My\Custom\Foo\Entity\NewsSubCategory")
* @ORM\JoinColumn(name="sub_category", referencedColumnName="id")
*/
private $subCategory;
[編輯]:
我試過
->add('subCategory', 'sonata_type_model',array("label" => "Catégorie/Sous Catégorie","btn_add" => false), array("sortable" => "ordering"))
而且我沒有犯錯,但沒有發生任何事情。我不明白的地方,我可以添加選項(orderBy => 'Affaire')
,或者它已做這樣...
[EDIT2]:
我甚至嘗試:
->add('subCategory.category.affaire', null,
array("label" => "Catégorie/Sous Catégorie",
"btn_add" => false
))
好主意。我不知道你能做到。 Merci! – Gauthier