rails/guides/rails_guides/helpers.rb

54 lines
1.4 KiB
Ruby
Raw Normal View History

`rails_guides/helpers.rb` requires `YAML` to run. Resolve the following error when running `bundle exec rake guides:generate:html`: ``` /Users/senny/.rbenv/versions/2.0.0-p353/bin/ruby rails_guides.rb Generating 2_2_release_notes.md as 2_2_release_notes.html /Users/senny/Projects/rails/guides/rails_guides/helpers.rb:17:in `documents_by_section': uninitialized constant RailsGuides::Helpers::YAML (ActionView::Template::Error) from /Users/senny/Projects/rails/guides/rails_guides/helpers.rb:32:in `docs_for_menu' from /Users/senny/Projects/rails/guides/source/layout.html.erb:56:in `block in ___sers_senny__rojects_rails_guides_source_layout_html_erb___3094858039481335962_70118647133480' from /Users/senny/Projects/rails/guides/source/layout.html.erb:54:in `each' from /Users/senny/Projects/rails/guides/source/layout.html.erb:54:in `___sers_senny__rojects_rails_guides_source_layout_html_erb___3094858039481335962_70118647133480' from /Users/senny/Projects/rails/actionview/lib/action_view/template.rb:143:in `block in render' from /Users/senny/Projects/rails/activesupport/lib/active_support/notifications.rb:161:in `instrument' from /Users/senny/Projects/rails/actionview/lib/action_view/template.rb:337:in `instrument' from /Users/senny/Projects/rails/actionview/lib/action_view/template.rb:141:in `render' from /Users/senny/Projects/rails/actionview/lib/action_view/renderer/template_renderer.rb:61:in `render_with_layout' from /Users/senny/Projects/rails/actionview/lib/action_view/renderer/template_renderer.rb:47:in `render_template' from /Users/senny/Projects/rails/actionview/lib/action_view/renderer/template_renderer.rb:17:in `render' from /Users/senny/Projects/rails/actionview/lib/action_view/renderer/renderer.rb:42:in `render_template' from /Users/senny/Projects/rails/actionview/lib/action_view/renderer/renderer.rb:23:in `render' from /Users/senny/Projects/rails/actionview/lib/action_view/helpers/rendering_helper.rb:24:in `render' from /Users/senny/Projects/rails/guides/rails_guides/markdown.rb:160:in `render_page' from /Users/senny/Projects/rails/guides/rails_guides/markdown.rb:25:in `render' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:205:in `block in generate_guide' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:195:in `open' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:195:in `generate_guide' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:144:in `block in generate_guides' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:142:in `each' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:142:in `generate_guides' from /Users/senny/Projects/rails/guides/rails_guides/generator.rb:97:in `generate' from rails_guides.rb:63:in `<main>' rake aborted! Command failed with status (1): [/Users/senny/.rbenv/versions/2.0.0-p353/bi...] /Users/senny/Projects/rails/guides/Rakefile:11:in `block (3 levels) in <top (required)>' Tasks: TOP => guides:generate:html (See full trace by running task with --trace) ```
2014-02-03 10:59:01 +00:00
require 'yaml'
module RailsGuides
module Helpers
def guide(name, url, options = {}, &block)
link = content_tag(:a, :href => url) { name }
result = content_tag(:dt, link)
if options[:work_in_progress]
result << content_tag(:dd, 'Work in progress', :class => 'work-in-progress')
end
result << content_tag(:dd, capture(&block))
2010-03-30 21:02:05 +00:00
result
end
def documents_by_section
@documents_by_section ||= YAML.load_file(File.expand_path('../../source/documents.yaml', __FILE__))
end
def documents_flat
documents_by_section.flat_map {|section| section['documents']}
end
def finished_documents(documents)
documents.reject { |document| document['work_in_progress'] }
end
def docs_for_menu(position=nil)
if position.nil?
documents_by_section
elsif position == 'L'
documents_by_section.to(3)
else
documents_by_section.from(4)
end
end
def author(name, nick, image = 'credits_pic_blank.gif', &block)
image = "images/#{image}"
2013-10-27 19:14:41 +00:00
result = tag(:img, :src => image, :class => 'left pic', :alt => name, :width => 91, :height => 91)
result << content_tag(:h3, name)
result << content_tag(:p, capture(&block))
2010-03-30 21:02:05 +00:00
content_tag(:div, result, :class => 'clearfix', :id => nick)
end
def code(&block)
c = capture(&block)
content_tag(:code, c)
end
end
end