如何通过URL传递View上下文过滤器?


18

我想通过URL中的上下文过滤器将一些值传递给我的视图。我要使用哪些GET惯用语?似乎没有任何线索,只是“上下文过滤器值由URL提供”。

如果必须构造该URL,如何确定需要传递哪些GET变量名才能被识别?

Answers:


13

上下文过滤器不会在单独的变量中传递,它们是路径的一部分。如果您的视图路径为xxx / yyy,则过滤器值为nn,则路径为xxx / yyy / nn。


1
+1。并且此xxx / yyy顺序与您在Views UI的“上下文过滤器”窗格中看到的顺序相同。
AyeshK

12

在上下文过滤器中使用提供默认值。

上下文过滤器

您也可以使用php代码从url获取值

在此处输入图片说明


1
您是否可以使用一些PHP代码示例?谢谢!
petergus 2014年

它与那个领域有关。例如:-这是一个数字字段吗?或返回$ user-> uid; 等.....将工作。
Sibiraj PR

当值不在url中时,这些选项不可用吗?如何测量作为参数发送的值?
pal4life 2014年

最好不要在数据库中包含PHP代码,始终在文件中编写代码并将其保存在代码修订系统中
lslinnet 2015年

5

如果要通过URL中的GET传递参数,则可以使用BEF模块。

例如: mydomain.com/your-view-path?field_a=valuea&field_b=valueb

使用“更好的暴露过滤器”时,您需要添加暴露过滤器(而不是上下文过滤器),选中“暴露此过滤器”选项,并且GET变量名称位于更多选项的下面。然后,如果您不想显示过滤器,则可以将其隐藏在“更好的暴露过滤器设置”中。

如果视图是块显示,请不要忘记启用“使用Ajax”选项。

公开的过滤器样式设置必须在“更好的公开的过滤器”而不是“基本”上设置。

这对于视图块非常有用。

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.