Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Setting up STI subclass routes programmatically
if Rails.env.development?
# Make sure we preload the parent and children class in development
# since classes aren't pre-cached. Otherwise we get an error when
# accessing a child class before we access the parent.
%w[kase coaching_kase training_kase alpha_kase].each do |c|
require_dependency File.join("app","models","#{c}.rb")
# This will work without any prerequisites in any environment where classes are cached,
# but in development you will need to add an initializer that preloads the subclass files.
resources :kases
Kase.subclasses.each do |klass|
k =
resources k, :controller => 'kases'

s2t2 commented Apr 18, 2014

thanks, the sti preloading helped me out in rails 4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment