String 将静态字符串与视图参数混合

String 将静态字符串与视图参数混合,string,drupal,static,views,arguments,String,Drupal,Static,Views,Arguments,有人能告诉我是否可以将视图参数与静态字符串混合使用吗 例如,在视图提要显示的路径部分,我需要: /mypath/%.xml 其中“.xml”部分是静态字符串 提前感谢。我刚刚测试了这个,但你无法按照上面发布的路径进行测试。视图似乎仅在“%”位于斜杠之间或位于末尾时才将其识别为参数占位符。因此,有效的方法是这样的: /mypath/%/rss.xml 或 /mypath/static/%我刚刚测试了这个,但是你不能按照上面发布的路径执行。视图似乎仅在“%”位于斜杠之间或位于末尾时才将其识别为参数占

有人能告诉我是否可以将视图参数与静态字符串混合使用吗

例如,在视图提要显示的路径部分,我需要:

/mypath/%.xml

其中“.xml”部分是静态字符串


提前感谢。

我刚刚测试了这个,但你无法按照上面发布的路径进行测试。视图似乎仅在“%”位于斜杠之间或位于末尾时才将其识别为参数占位符。因此,有效的方法是这样的:

/mypath/%/rss.xml


/mypath/static/%

我刚刚测试了这个,但是你不能按照上面发布的路径执行。视图似乎仅在“%”位于斜杠之间或位于末尾时才将其识别为参数占位符。因此,有效的方法是这样的:

/mypath/%/rss.xml


/mypath/static/%

在path中,无论如何,您应该设置path/%
但您可以在验证代码中检查参数%.xml:
在视图参数添加/编辑窗口中:
验证器选项-验证器-PHP代码:

输入返回TRUE或FALSE的PHP代码。No return与FALSE相同,因此如果不想声明参数无效,请确保返回某些内容。不要使用。要验证的参数将是“$argument”,视图将是“$view”。您可以通过设置“$handler->argument”来更改参数。

用于检查是否存在xml字符串。
此外,您还可以修改参数,正如它在路径中的注释:$handler->argument

中所写,无论如何,您应该设置path/%
但您可以在验证代码中检查参数%.xml:
在视图参数添加/编辑窗口中:
验证器选项-验证器-PHP代码:

输入返回TRUE或FALSE的PHP代码。No return与FALSE相同,因此如果不想声明参数无效,请确保返回某些内容。不要使用。要验证的参数将是“$argument”,视图将是“$view”。您可以通过设置“$handler->argument”来更改参数。

用于检查是否存在xml字符串。
此外,您还可以修改注释中所写的参数:$handler->argument

我终于找到了答案

在验证下,选择PHP代码。然后我进入:

    // strip ".xml" from incoming 
    $new_arg = preg_replace('/\.xml$/', '', $argument ); argument
    $handler->argument = $new_arg;
    return TRUE; //must return something

这很有效。现在Drupal将“foo”发送到SQL查询,即使通过url传入的参数是“foo.xml”

我终于找到了答案

在验证下,选择PHP代码。然后我进入:

    // strip ".xml" from incoming 
    $new_arg = preg_replace('/\.xml$/', '', $argument ); argument
    $handler->argument = $new_arg;
    return TRUE; //must return something

这很有效。现在Drupal将“foo”发送到SQL查询,即使通过url传入的参数是“foo.xml”

我担心这一点。我们的服务器管理员不允许使用/dir/index.xml。有人能给我一个提示,告诉我如何编写一个模块来扩展视图,以便允许将路径参数与静态字符串混合使用吗?我很害怕。我们的服务器管理员不允许使用/dir/index.xml。有谁能给我一个提示,告诉我如何编写一个模块来扩展视图,以便允许将路径参数与静态字符串混合使用?