Я новичок в посреднике и всех возможностях, которые у меня есть. Я хочу сделать смертельно простой скрипт haml, который работает как индексная страница, в которой перечислены все мои типы страниц для более быстрой навигации внутри проекта.NoMethodError при вызове meta_data из объекта Ресурс Middleman
Вот код:
---
layout: no_layout
---
- resources = sitemap.resources.sort {|a,b| a.url <=> b.url}
- pages = Array.new
- resources.each do |resource|
- metadata = resource.metadata[:page]
- if resource.mime_type.match(/^text\/html/) && metadata["title"]
- element = Hash.new
- element["url"] = resource.url
- element["title"] = metadata["title"]
- element["desc"] = metadata["desc"]
- if element["url"].start_with?('/')
- element["url"].slice!(0)
- pages.push(element)
%h1 Page elements
- if pages.length > 0
%ul
- pages.each do |page|
%li
%a{:href => page["url"]} #{page["title"]}
- if page["desc"]
%br
= page["desc"]
- else
No pages found.
К сожалению, Посредник генерирует следующее сообщение об ошибке:
NoMethodError at/
undefined method `mime_type' for #<Middleman::Sitemap::Resource:0x000000069df020>
Но Посредник документация говорит, что объект ресурсов содержит метод и у меня есть некоторый код примера что также работает именно так.
Может ли кто-нибудь сказать мне, что я делаю неправильно?
Заранее спасибо
Это принеси мне "NoMethodError в/неопределенный метод' content_type»для # <Посредник :: Карта сайта :: Ресурс: 0x000000053fd928>" ошибка, а также. Я думаю, что что-то с моей установкой Windows неверно. Хотя у меня есть рабочий образец на моей машине, который использует mime_type –
Возможно, обновите посредника; в моем примере используется 3.1.6. – sam
Вы правы. Моя версия 3.0.13. После обновления до 3.1.6, content_type работает для меня сейчас. mime_type все еще нет. Благодаря! –