Python 金字塔';添加静态视图工作?

Python 金字塔';添加静态视图工作?,python,web-applications,pyramid,Python,Web Applications,Pyramid,如何在金字塔中添加静态视图(名称、路径) 从文档字符串: name参数是一个字符串,表示应用程序的相对名称 本地URL前缀。它也可以是完整URL。 path参数是存储静态文件的磁盘路径 驻留。这可以是绝对路径,也可以是包相对路径, 或资产规格。” 不知何故,我有一种印象,这种描述是不正确的 非常准确 如果我按照 config.add_static_view("static", "/path/to/resource/on/filesystem") 我去拜访 http://localhost:PO

如何在金字塔中添加静态视图(名称、路径)

从文档字符串:

name
参数是一个字符串,表示应用程序的相对名称 本地URL前缀。它也可以是完整URL。
path
参数是存储静态文件的磁盘路径 驻留。这可以是绝对路径,也可以是包相对路径, 或资产规格。”

不知何故,我有一种印象,这种描述是不正确的 非常准确

如果我按照

config.add_static_view("static", "/path/to/resource/on/filesystem")
我去拜访

http://localhost:PORT/static/logo.png  
我看到logo.png给出了 可以在

/path/to/resource/on/filesystem/
现在,如果我有如下代码

config.add_static_view("http://myfilehoster.com/images", "myproject:images")
“the
path
参数是磁盘上的路径,其中 静态文件“看起来不再准确,因为实际 文件驻留在myfilehoster的磁盘上。 在我看来,我只是在注册某种标识符 (myproject:images),我可以在程序代码中使用它来引用 “真实”位置http://myfilehoster.com/images". 例如

会解决的 "http://myfilehoster.com/images/logo.png“


那么这里的文档不准确还是我遗漏了什么?

您遗漏了什么。在报告中指出:

调用
add\u static\u view()
name
参数也可以是URL,而不是表示URL前缀。到目前为止,我们看到的每个示例都显示了
name
参数作为URL前缀的用法。但是,当
name
是URL时,可以从外部Web服务器提供静态资产。在此模式下,当使用
pyramid.request.request.static\u URL()
生成URL时,
名称
用作URL前缀

在类似的措辞中使用:

当使用表示URL前缀的
name
参数调用
add\u static\u view
时,如上所述,随后将调用
pyramid.request.request.static\u URL()
如果路径以
path
参数开头,传递给
add\u static\u view
将生成类似
http:///images/logo.png
,这将导致提供
mypackage
包的images子目录中的
logo.png
文件


使用URL将切换
添加静态视图的行为,并且
路径
参数仅被解释为
.static\u URL()
方法的符号路径。后一个细节可能没有在文档中明确描述,如果您对此有强烈感觉,可以在中提出问题。

谢谢!这对我来说很清楚。我想我可能会建议对文档进行修改,否则到目前为止,文档已经非常好了。我想这让我确信现在到处都在使用它。
request.static_url("myproject:images/logo.png")