You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've noticed that Fortitude has an inline_html method, to which you can pass a block. However, it appears that since we're outside of the ActionView context, we don't have access to the download_attachment_path helper that Rails provides.
@ageweke: I've kept up a bit with the recent issue comments about rendering context... but I'm unsure if there's a way you'd recommend to implement this.
It looks like I could probably create an instance of ActionView::Base and somehow use it as my rendering context. I could probably package it up in a nice little method that would be easy to call in the future. But I feel like I'm probably doing something wrong here...
The text was updated successfully, but these errors were encountered:
Hmmm. This is a really difficult problem. While I’ve seen Rails people say “don’t do that in a model!”, I’ve wanted to do exactly the same kind of thing, for the same reason. (It’d be one thing to render a whole wad of HTML in a model, but a list of links is another thing…)
You’re exactly right about the reasons why there is no download_attachment_path helper there. Perhaps take a look at my latest reply (posted just now) to #34: it gives a tiny bit of code that’ll let you supply Fortitude with a helpers object that will give your widget access to whatever helpers you want — assuming you mix in the module (here, some module I know you can get access to that has all of your routes helpers in it).
It strikes me, looking at it, that Fortitude’s inline_html doesn’t let you pass in a RenderingContext for its internal call to to_html. I’ll try to add that, and keep this bug open for that. In the mean time, you can just call SomeWidgetClass.inline_subclass { … }.new(assigns).to_html(my_rendering_context), which does exactly the same thing.
In 0.9.5, which I just released, #inline_html can take a second argument, a Fortitude::RenderingContext. While it’s impossible for Fortitude to magically make the case above “just work”, for the reasons referenced in here, this should make it about as easy as is possible.
So I'm converting some Erector code to Fortitude. Outside of a normal ActionView context (say, in a model,) we've got a method that looks like this:
I've noticed that Fortitude has an
inline_html
method, to which you can pass a block. However, it appears that since we're outside of the ActionView context, we don't have access to thedownload_attachment_path
helper that Rails provides.@ageweke: I've kept up a bit with the recent issue comments about rendering context... but I'm unsure if there's a way you'd recommend to implement this.
It looks like I could probably create an instance of
ActionView::Base
and somehow use it as my rendering context. I could probably package it up in a nice little method that would be easy to call in the future. But I feel like I'm probably doing something wrong here...The text was updated successfully, but these errors were encountered: