user1593858
user1593858

Reputation: 649

Escaping double quotes in Rails link_to

I am new to the Rails framework and Ruby language in general but I do have some programming and MVC experience. I am trying to output a link using rails' link_to method. However in the HTML this link is inside another set of double quotes. I need to escape the quotes produced by rails in the tag.

I have tried google and only found information for javascript escaping which didnt help. I tried using a h(%[]) method that was mentioned a few times but then the link was not created and the actual words link_to were out put.

Does anyone know how I can escape the double quotes in the hyperlink tag created by rails or switch it to use a single quote?

Actual Code

<% @properties = Property.all 
                            @properties.each do |property| %>
                            <img src="images/img<%= property.id %>.jpg" alt="" title="<strong><%= property.address %></strong><span>9 rooms, 3 baths, 6 beds, building size: 5000 sq. ft. &nbsp; &nbsp; &nbsp; Price: $ 600 000 &nbsp; &nbsp; &nbsp; <%= link_to "Read More", property) %></span>">
                            <% end %>

Output

<img src="images/img1.jpg" alt="" title="<strong>50 Craft LAne</strong><span>9 rooms, 3 baths, 6 beds, building size: 5000 sq. ft. &nbsp; &nbsp; &nbsp; Price: $ 600 000 &nbsp; &nbsp; &nbsp; <a href="/properties/1">Read More</a></span>">

The first double quote in the hyperlink is pairing with the title=" and then everything is off

Upvotes: 1

Views: 4048

Answers (2)

Pawel
Pawel

Reputation: 944

You can do something like that:

<%= link_to("Read More", property).gsub("\"", "'") %>

Upvotes: 3

Ismael
Ismael

Reputation: 16720

link_to '"something"'

Does not work? Give an example of what you whant

Upvotes: 0

Related Questions