I have an app where I have both Facebook controllers and normal Rails controllers side by side; but Facebooker likes to set ActionController::Base.asset_host = callback_url; for my app I moved that into my facebook controller but still in my "normal app" controller it still have asset_host == callback_url. Well -- technically that's only true if both controllers are loaded.
Should asset_host be declared as class_inherited_accessor (rather than cattr_accessor) -- or am I being too picky about wanting it to be correct when both controllers are loaded?
Should asset_host be declared as class_inherited_accessor (rather than
cattr_accessor) -- or am I being too picky about wanting it to be
correct when both controllers are loaded?
It wouldn't be *quite* that easy as we cache the calls to
path_to_image etc. So while you changed the value, you may not see
that reflected in the generated markup. So the simple solution won't
work.
A more full-featured solution would be to also move that cache into an
inheritable accessor, but that would likely use up a lot of memory.
You could also investigate making the asset caching configured
independently of the general caching setup, and then turn it off if
you wanted to override the settings.