【问题标题】:Drupal Views - Hide a Field if annother Field is not empty? / Show a Field unless its empty, then show a differnt Field?Drupal Views - 如果另一个字段不为空,则隐藏一个字段? / 显示一个字段,除非它为空,然后显示一个不同的字段?
【发布时间】:2010-10-15 17:03:43
【问题描述】:

使用 Drupal 视图,如果另一个字段不为空,我如何隐藏一个字段?换句话说,我怎样才能显示一个字段,除非它是空的,然后显示一个不同的字段?

我有以下;

节点1 fieldA - 节点 1 中字段 A 的文本 fieldB - 节点 1 中字段 B 的文本

节点2 字段A -(空) fieldB - 节点 2 中字段 B 的文本

我想显示fieldA,除非它是空的,在这种情况下我想显示fieldB。所以我的视图会显示;

'节点 1 中字段 A 的文本' '节点 2 中字段 B 的文本'

我该怎么做?如果一个字段为空,我可以隐藏一个字段,但如果另一个字段没有被隐藏,我如何隐藏一个字段?

如果它很重要,我这样做的原因是我使用图像缓存为画廊生成缩略图。但是,对于某些缩略图,我希望能够上传不同的图像以用作缩略图。 谢谢

【问题讨论】:

  • 也许你想通过点击左边的勾来接受下面的答案?对于您的其他一些问题,即使是您自己回答的问题,也可以这样做。

标签: drupal drupal-views


【解决方案1】:

http://drupal.org/sandbox/benclark/1213836

提供此功能的新沙盒模块可用。

【讨论】:

    【解决方案2】:

    现在看来,这可以使用“如果为空则重写”行为来实现,该行为允许从视图中替换标记 - 诀窍是您需要将“字段 b”按视图字段的顺序放在首位,并且隐藏它不显示。然后在“字段a”设置中,将无结果行为设置为“字段b”的标记(通常类似于[field_b])......从逻辑上讲,这意味着如果字段A有一个值,它将被显示,但如果没有(无结果)字段 b 将改为显示。

    【讨论】:

    • 嗨@ryantdecker 是否会重写如果为空行为允许我实现这一点:如果字段 C(完成日期)为空,则隐藏字段 B(分隔线)?
    • @AuxiliaryJoel - 我认为你在正确的轨道上,但逻辑会有点不同:隐藏字段 b,自定义字段 c 的输出以包含字段 b 和 c,然后隐藏C(包括 b)如果它是空的。
    • 啊,我明白了。所以字段 C 将在其重写设置中包含字段 B+C 的短代码,如果它为空 - 隐藏重写?
    • 在这里感谢您的帮助。它以一种非常简单的方式帮助我实现了我想要的,否则我会害怕提供预处理编码,但现在我可以轻松地直接在视图中处理它。
    • 当你回答一个 5 年前的问题并且有人觉得它很有用时,总是很好。干杯!
    【解决方案3】:

    http://drupal.org/node/941908 。无论如何,没有简单的解决方案。

    【讨论】:

    • 谢谢,我想有时需要一点 php。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-09
    • 2022-12-14
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    相关资源
    最近更新 更多