Skip to content
Create a gist now

Instantly share code, notes, and snippets.

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
<h1>Hello, World!</h1>
# From your model, observer or library, call:
HelloWorldController.new.show
# => "<h1>Hello, World!</h1>\n"
@rdetert
rdetert commented Feb 25, 2011

This doesn't seem to work for partials.

@hubertlepicki
Owner

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

@hubertlepicki
Owner

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

@rdetert
rdetert commented Feb 25, 2011

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

@hubertlepicki
Owner

yes, pretty sure both are expected behaviors

@guipdutra

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

@bradrobertson

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.