根据docs,
auto_discovery_link_tag(:atom, {controller: "home", action: "public_archives"})`
应该返回
<link rel="alternate" type="application/atom+xml" title="ATOM" href="http://www.currenthost.com/home/public_archives" />
但我只是在没有控制器或操作的情况下获得主机。
<link href="http://currenhost.com/" rel="alternate" title="ATOM" type="application/atom+xml" />
答案 0 :(得分:1)
由于您的root_path
为home#public_archives
,auto_discovery_link_tag
的行为符合预期。
例如,如果你把:
auto_discovery_link_tag(:atom, {controller: "articles", action: "index"})
输出结果为:
<link rel="alternate" type="application/atom+xml" title="ATOM" href="http://www.currenthost.com/articles" />
不
<link rel="alternate" type="application/atom+xml" title="ATOM" href="http://www.currenthost.com/articles/index" />
因为articles#index
的路径是/articles
。它返回的href是路径文件中与列出的控制器和操作匹配的第一个路径。在您的情况下,控制器home
和操作public_archives
首先匹配/
。