2012-01-04 16 views
40

symfony2 ve SonataAdminBundle kullanıyorum. Temel olarak html metni olan (kayıt için bir ckeditor'dan) içerik alanım olan Post adlı basit bir Varlık var. Post listesinde içerik alanını kaçmadan, ham html olarak görüntülemem gerekiyor. BuSonataAdminBundle Listedeki metin alanlarının özel görünümü

{% block field %}{{ value|raw }}{% endblock %} 

eserleri gibi Hacking base_list_field şablon, ancak açıkça uygun yolu değil. Herhangi bir ipucu?

düzenleme: SOLVED! Ben sonata_doctrine_orm_admin için config.yml özel bir html türü tanımladığınız:

sonata_doctrine_orm_admin: 
    templates: 
     types: 
     list: 
      html: MyBundle:Default:list_html.html.twig 

Ve HTML kaçış yok ettiği şablona list_html.html.twig özel oluşturuldu: Şimdi

{% extends 'SonataAdminBundle:CRUD:base_list_field.html.twig' %} 

{% block field%} 
    {{value|raw}} 
{% endblock %} 

PostAdmin I configureListFields yöntemi bu alanda davranışını tanımlayabiliriz:

$listMapper 
    ->add('content', 'html') 
+11

kendi cevabı ekleyebilir ve küçük bir gecikmeden sonra (bunu kabul etmelidir, ben onun tw düşünüyorum cevabınızı çözümle düzenlemek yerine o gün kabul et. – Matt

cevap

24

çözeltisi:

Ben sonata_doctrine_orm_admin için config.yml özel bir html türü tanımladığınız:

sonata_doctrine_orm_admin: 
    templates: 
     types: 
     list: 
      html: MyBundle:Default:list_html.html.twig 

Ve HTML kaçış yok ettiği şablona list_html.html.twig özel oluşturuldu:

{% extends 'SonataAdminBundle:CRUD:base_list_field.html.twig' %} 

{% block field%} 
    {{value|raw}} 
{% endblock %} 

Şimdi PostAdmin I configureListFields yönteminde alanın davranışını tanımlayabilirsiniz:

$listMapper 
    ->add('content', 'html') 
İlgili konular