首页 文章

rails xml.builder缺少模板错误

提问于
浏览
0

错误:模板丢失

缺少模板杂项/站点 Map ,应用程序/站点 Map {:locale => [:en],:formats => [:xml],:handlers => [:erb,:builder]} . 搜索:“/ Users / yliu / Google Drive / ruby projects / Blog / lenswish / app / views”“/usr/local/rvm/gems/ruby-1.9.3-p194/bundler/gems/twitter-bootstrap -rails-4b8a511e6518 / app / views“*”/ usr / local / rvm / gems / ruby-1.9.3-p194 / gems / devise-3.1.0 / app / views“

耙路线:

GET      /sitemap.xml(.:format)                 miscellaneous#sitemap {:format=>"xml"}

routes.rb中:

get "sitemap.xml", :to => "miscellaneous#sitemap", defaults: { format: "xml" }

控制器:

class MiscellaneousController < ApplicationController
  def sitemap
    @card_templates = CardTemplate.all
    respond_to do |format|
      format.xml
    end
  end
end

模板位置:app / views / miscellaneous / sitemap.xml.builder

模板sitemap.xml.builder中的内容:

# Sitemaps 0.9 XML format: http://www.sitemaps.org/protocol.php
xml.instruct!
xml.urlset :xmlns => 'http://www.sitemaps.org/schemas/sitemap/0.9' do
  xml.url do
    xml.loc root_url
    xml.changefreq 'daily'
    xml.lastmod @card_templates.first.updated_at.iso8601
    xml.priority '0.8'
  end
end

我已经检查了文件权限问题 . 还是行不通 . 有人请帮忙 . 提前致谢 .

2 回答

  • 0

    这看起来不对我:

    GET      /sitemap.xml(.:format)                 miscellaneous#sitemap {:format=>"xml"}
    

    不应该这样吗?

    GET      /sitemap(.:format)                 miscellaneous#sitemap {:format=>"xml"}
    

    我会改变你的路线:

    get "sitemap", :to => "miscellaneous#sitemap"
    

    您的控制器代码应该看起来一样

    class MiscellaneousController < ApplicationController
      def sitemap
        @card_templates = CardTemplate.all
        respond_to do |format|
          format.xml
        end
      end
    end
    
  • 0

    原来这是一个IDE问题,我从textmate ui看到的文件名与我在终端上看到的文件名不同 . 我重命名文件后修复 .

相关问题