public
Last active

  • Download Gist
hello_world_controller.rb
Ruby
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
class HelloWorldController < AbstractController::Base
include AbstractController::Rendering
include AbstractController::Layouts
include AbstractController::Helpers
include AbstractController::Translation
include AbstractController::AssetPaths
include ActionController::UrlWriter
 
# Uncomment if you want to use helpers defined in ApplicationHelper in your views
# helper ApplicationHelper
 
# Make sure your controller can find views
self.view_paths = "app/views"
 
# You can define custom helper methods to be used in views here
# helper_method :current_admin
# def current_admin; nil; end
 
def show
render template: "hello_world/show"
# or, for partials:
# render partial: "hello_world/show"
end
end
show.html.erb
HTML+ERB
1
<h1>Hello, World!</h1>
usage.rb
Ruby
1 2 3 4
# From your model, observer or library, call:
 
HelloWorldController.new.show
# => "<h1>Hello, World!</h1>\n"

This doesn't seem to work for partials.

I have updated the gist. Looks like you have to call render method now -- both versions (template and partial) work for me on 3.0.4

please let me know if it doesn't work...

I had to call it the old fashioned way by going 'render :partial => "hello_world/show"'

Another GOTCHA is you'll need to set this: self.assets_dir = '/app/public' if you want to use something like image_tag in your views

yes, pretty sure both are expected behaviors

I want to render with the assets, I have to do anything else?

any idea how to get this to work on Rails 3.2, specifically with proper digested asset urls? The above code doesn't work with rails 3.2

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.