通过复选框字段过滤视图


12

我的站点的节点类型为“资源”。该节点类型具有一个称为“已审阅”的字段。此字段是一个单独的开关复选框:

“管理字段”表单的屏幕截图

我创建了一个视图,该视图列出了节点类型为“资源”的所有节点。我想过滤该视图,因此它仅显示选中了“已审阅”复选框的节点。但是,当我尝试将该字段添加到视图中时,显示以下内容:

构建视图的屏幕截图

我希望“选项”选择框是一个复选框,可以选中或保留为空。相反,我给了一个选择框,里面有“全选”。无论是否选择此选项,都会向我显示一条错误消息,指出“在过滤器上找不到有效值:内容:已审查。”:

“找不到有效值”错误消息

我在http://technology.blue-bag.com/top-tip-drupal-views-no-valid-values-found-filter上尝试了“公开主显示技巧” ,但这没有用:主显示中没有“未知”过滤器,因此似乎没有任何要修复的内容。

关于如何获得想要的结果的任何想法吗?用选择框而不是复选框处理奇怪的UI有什么用?最好知道是否有逻辑;如果没有,我会将问题发布到适当的drupal.org问题队列中。


我希望布尔值字段的过滤器具有3种状态:1.仅显示带有“是”的结果,2.仅显示带有“否”的结果,3.显示所有结果。
donquixote

Answers:


11

这是布尔字段创建方式的某种错误/不完善。如果您将其保留为默认值,而没有任何0/1值,则不会在此过滤器之类的位置显示它们。
但是:值存在:)在“全选”下,您只有2行没有标题。当选择其中之一时,可以看到视图的SQL已更改。
解决方法是将一些标题添加到字段定义中的值。


谢谢,@ mojzis!我也张贴在了drupal.org/node/2027171的Views问题队列中。
吉姆(Jim

@Jim,对不起,我应该在布尔值字段中强调它的更多问题,而且显然已经有人在处理它了:) drupal.org/node/1750950
mojzis

啊,谢谢!我对发布到Views问题队列以将其与核心D8问题相关联的问题进行了评论。
吉姆(Jim)

2

我也面临着同样的问题,该字段的标签未显示在视图的公开过滤器中。

然后,我转到该复选框字段的内容类型字段设置,并将On Value更新为1,将OFF value更新为0

现在,标签出现在暴露的滤镜中,并且可以正常工作。


1

我遇到相同的问题,而是使用“全选”,您应该不选择任何值。如果您已经选择了一个值,请使用Ctrl撤消选择。

资源


1
您能对此做一点扩展并解释为什么这可以解决问题,而不仅仅是您的问题吗?
mpdonadio
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.