link_to in the controller flash message?

How can one do something similar to:

redirect_to(:back, :notice => "Photo was successfully created. Click <a href='#{url_for artist_photo_path(@photo.artist, @photo)}'>here</a> to view it")

The flash notice message is shown however, it shows: "Photo was successfully created. Click <a href='/artists/1/photos/39'>here</a> to view it". It displays the anchor element as a string instead of an html element

Christian Fazzini wrote in post #957990:

How can one do something similar to:

redirect_to(:back, :notice => "Photo was successfully created. Click <a href='#{url_for artist_photo_path(@photo.artist, @photo)}'>here</a> to view it")

The flash notice message is shown however, it shows: "Photo was successfully created. Click <a href='/artists/1/photos/39'>here</a> to view it". It displays the anchor element as a string instead of an html element

So don't escape the HTML! Easy.

Best,

Try this

class YourController < ApplicationController   include ActionView::Helpers::SanitizeHelper

  def your_action     redirect_to(:back, :notice => sanitize("Photo was successfully created. Click <a href='#{url_for artist_photo_path(@photo.artist, @photo)}'>here</a> to view it"))   end end

If you haven't used the sanitize method before, please read this http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html#method-i-sanitize

before using it.

Arailsdemo, I dont think the sanitize helper works in the controller level. I get the error: undefined method `sanitize

Marnen, please be more specific!

Arailsdemo, I dont think the sanitize helper works in the controller level. I get the error: undefined method `sanitize

Marnen, please be more specific!

Look at where you're displaying the contents of the flash; you may need to either not call h() or use the raw helper to indicate that the contents of the flash are safe to display

Fred

Maybe the better idea is just to use some session variable instead of flash? (just for cases like this one)

Did you include the module?

class YourController < ApplicationController   include ActionView::Helpers::SanitizeHelper

Christian Fazzini wrote in post #958461: