2017-06-15 3 views
4

symfonyプロジェクトでソナタバンドル(管理者とメディア)を使用しています。ファイルプレビュー-PDFファイルを表示する必要があります(ファイルをダウンロードするリンクまたは新しいタブに表示するリンク)。 私は良い解決策なしで多くのことを検索 これはconfigureListFieldsでFILDです。Symfony:Sonataメディアファイルのプレビュー

 ->add('cv', null, array('template' => 'admin:list_image.html.twig')) 

これは、テンプレートの小枝コードです:

{% extends 'SonataAdminBundle:CRUD:base_list_field.html.twig' %} 
{% block field %} 
    <div> 
     {% if object.cv != null %} 
      <img src="{{ object.cv.path }}"> 
     {% else %} 
      <span>No picture</span> 
     {% endif %} 
    </div> 
{% endblock %} 

任意のヘルプをしてください、事前に感謝を

+0

リンクやプレビュー(画像)をレンダリングする必要がありますか? 'cv'オブジェクトはどのように見えますか? – lordrhodos

+0

いいえ私はpdfファイルのリンクをレンダリングする必要があります –

答えて

0

は最終的に私は、テンプレートを変更して解決策を見つけた:

これは私のadminクラスです:

protected function configureListFields(ListMapper $listMapper) 
{ 
$listMapper->add('cv', null, array('template' => 'admin/list_field_cv.html.twig')); 
} 

、これが私のカスタムテンプレートです:私は願っています

{% extends admin.getTemplate('base_list_field') %} 

{% block field %} 
    {% if value %} 
     {% set route_name = field_description.options.route.name %} 
     {% if not field_description.options.identifier|default(false) and 
     field_description.hasAssociationAdmin and 
     field_description.associationadmin.hasRoute(route_name) and 
     field_description.associationadmin.hasAccess(route_name, value) %} 
      <div class="btn-group"> 

       <a class="btn btn-default btn-sm btn-block" 
        href="{{ field_description.associationadmin.generateObjectUrl(route_name, value, field_description.options.route.parameters) }}"> 
        {{ value|render_relation_element(field_description) }} : to media 
       </a> 
       <a class="btn btn-info btn-sm btn-block" 
        href="{{ path('sonata_media_download', {'id': (object.cv.id)}) }}"> 
        {{ value|render_relation_element(field_description) }} : Télécharger 
       </a> 
       <a class="btn btn-link btn-sm btn-block" 
        href="{% path object.cv,'reference' %}"> 
        {{ value|render_relation_element(field_description) }} : Ouvrir 
       </a> 

      </div> 
     {% else %} 
      {{ value|render_relation_element(field_description) }} 
     {% endif %} 
    {% endif %} 
{% endblock %} 

助けになる !

関連する問題