Как использовать изображение URI и файл URI в представлении Drupal 8? - PullRequest
0 голосов
/ 06 января 2019

Я создал тип контента, известный как политики, который я хочу отображать в виде представления. Я создал поля для этого типа контента как Заголовок, Тело, Изображение, Файл. Мне нужно поле изображения для отображения миниатюрного изображения, и файл будет загружен в PDF для этой политики. Я создал вид со следующими параметрами:

Страница политик

views/views-view--mytheme--page-3.html.twig

<section id="services" class="sub services-bg wow fadeInUp">
  <div class="container">
    <h2>What We <span>Do</span> </h2>
    <div class="row">
     {% for result in view.result %}
     {% if loop.index == 2 %}
     {% endif %}
      <div class="col-md-4 col-sm-4 col-xs-12 services-page wow fadeInUp">
        <div class="services-item">
          <a href="{{ basepath }}/node/{{ view.field.nid.value(view.result[loop.index-1]) }}">
            <img src="{{ file_url(view.field.uri.value(view.result[loop.index-1])) }}" 
            alt="{{ view.field.title.value(view.result[loop.index-1]) }}">
          <div class="services-caption text-center">
             <h5>{{ view.field.title.value(view.result[loop.index-1]) }}</h5>
             <p>{{ view.field.field.file.value(view.result[loop.index-1]) }}</p>                     
          </div></a>
        </div>
      </div> 
    {% endfor %}
   </div>
  </div>
</section>

Я хочу отобразить свой файл uri в теге

. В настоящее время с view.field.uri.value я просто получаю изображение URI. На dump(result) я получаю следующие поля:

["field_images_target_id"] => object(Drupal\ file\ Entity\ File) #1520 (27) { ["values":protected]= > array(11) {
        ["fid"] => array(1) {
            ["x-default"] => string(2)
            "79"
        } ["uuid"] => array(1) {
            ["x-default"] => string(36)
            "4a1419f4-75cb-44e1-a305-b571eee75874"
        } ["langcode"] => array(1) {
            ["x-default"] => array(1) {
                [0] => array(1) {
                    ["value"] => string(2)
                    "en"
                }
            }
        } ["uid"] => array(1) {
            ["x-default"] => string(1)
            "1"
        } ["filename"] => array(1) {
            ["x-default"] => string(16)
            "gen5EC8.tmp.jpeg"
        } ["uri"] => array(1) {
            ["x-default"] => string(33)
            "public://2019-01/gen5EC8.tmp.jpeg"
        } ["filemime"] => array(1) {
            ["x-default"] => string(10)
            "image/jpeg"
        } ["filesize"] => array(1) {
            ["x-default"] => string(4)
            "4596"
        } ["status"] => array(1) {
            ["x-default"] => string(1)
            "1"
        } ["created"] => array(1) {
            ["x-default"] => string(10)
            "1546704262"
        } ["changed"] => array(1) {
            ["x-default"] => string(10)
            "1546704262"
        }
    }
["field_file_target_id"] => object(Drupal\ file\ Entity\ File) #1518 (27) { ["values":protected]= > array(11) {
    ["fid"] => array(1) {
        ["x-default"] => string(2)
        "78"
    } ["uuid"] => array(1) {
        ["x-default"] => string(36)
        "87ad74bf-8fd8-4b7a-b90b-406df6bf5926"
    } ["langcode"] => array(1) {
        ["x-default"] => array(1) {
            [0] => array(1) {
                ["value"] => string(2)
                "en"
            }
        }
    } ["uid"] => array(1) {
        ["x-default"] => string(1)
        "1"
    } ["filename"] => array(1) {
        ["x-default"] => string(14)
        "jK6hSisN7m.txt"
    } ["uri"] => array(1) {
        ["x-default"] => string(31)
        "public://2019-01/jK6hSisN7m.txt"
    } ["filemime"] => array(1) {
        ["x-default"] => string(10)
        "text/plain"
    } ["filesize"] => array(1) {
        ["x-default"] => string(3)
        "796"
    } ["status"] => array(1) {
        ["x-default"] => string(1)
        "1"
    } ["created"] => array(1) {
        ["x-default"] => string(10)
        "1546704262"
    } ["changed"] => array(1) {
        ["x-default"] => string(10)
        "1546704262"
    }
}

Как использовать оба поля URI? Я пробовал view.field_images_target_id.uri.value и view.field_file_target_id.uri.value, но они не работают.

...