如何解决在视图中访问实体引用的字段views-view-fields.html.twig
- 网络研讨会
- 人
网络研讨会有一个实体参考字段(label:speaker,id:field_person_speaker)
- 人(多个值)
我在路径/ webinar上具有这些字段的视图(内容类型为webinar的字段的无格式列表)
- 标题
- youtubeID
- 日期
- 扬声器(格式化程序:呈现的实体)
我有一个呈现行的模板(views-view-fields--vcon-webinar.html.twig):
{% set title = fields.title.content %}
{% set date = fields.field_webinar_date.content %}
{% set url = path('entity.node.canonical',{ 'node' : row.nid}) %}
{% set speakers = fields.field_person_speaker.content %}
<div class="card h-100 shadow dl-webinar">
<div class="card-body">
<a class="dl-webinar-link" href="{{url}}"><span class="btn btn-light btn-sm dl-webinar-signup">Sign up</span></a>
<div>
<div class="d-flex">
{{speakers}}
</div>
</div>
<div>
<div class="d-flex">
<div class="p-3">
<h4>{{title}}</h4>
<p class="font-weight-light mb-0">{{date}}</p>
</div>
</div>
</div>
</div>
</div>
问题在于我无法获取所引用实体(扬声器)的各个字段值。我需要这些字段值(例如:field_person_first_name),因为我需要完全控制输出模板。
<div class="dl-webinar-bio d-flex align-items-end flex-row-reverse flex-fill">
<div><p class="dl-webinar-bio-name"><strong>First name,Last name</strong> <small class="font-weight-light">Project manager</small></p></div>
</div>
请有人帮我解决这个问题。。。
解决方法
最简单的方法是在特定的视图模式下呈现“人”内容类型。
然后,使用您期望的确切HTML结构覆盖模板node--person-yourviewmode.html.twig
。
所以您没有更改views-view-fields--vcon-webinar.html.twig
模板。
和在node--person-yourviewmode.html.twig
中:
<div class="dl-webinar-bio d-flex align-items-end flex-row-reverse flex-fill">
<div><p class="dl-webinar-bio-name"><strong>{{content.field_firstname}} {{ content.field_lastname}}</strong> <small class="font-weight-light">Project manager</small></p></div>
</div>
以上模板将在views-view-fields--vcon-webinar.html.twig
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。