如何从html.erb页面

时间:2017-04-03 20:46:09

标签: ruby-on-rails postgresql erb link-to

我正在使用ruby on rails在postgres数据库上写博客文章。表中帖子的内容有一些外部链接。我一直在使用link_to方法,但到目前为止,这只是从html.erb文件中打印出浏览器中的确切代码。到目前为止,我已经尝试过:

<%= link_to 'London Coffee Festival', http://www.londoncoffestival.com %>

<% link_to 'London Coffee Festival', http://www.londoncoffestival.com %>

<%= link_to 'http://www.londoncoffestival.com'do %>London Coffee Festival<% end %>

但这些变化似乎没有效果......

我的html.erb页面:

<%= render "partials/mainnav" %>
<div class="ui fluid image"><%= image_tag "header_img_thin.jpg" %>
</div>
<div class="ui grid container"><!--Main page container-->
  <div class="row">
    <div class="twelve wide column"><!--left Column-->
      <h1><%= @article.title %></h1>
<p><%= @article.text %></p>

<h2>Comments</h2>
<% @article.comments.each do |comment| %>
<p><strong>Name</strong>
<%= comment.commenter %>
</p>

<p>
<strong>Comment:</strong>
<%= comment.body %>
</p>
<% end %>

<h2>Add a comment:</h2>
<%= form_for([@article, @article.comments.build]) do |f| %>
  <p>
<%= f.label :Name %><br>
<%= f.text_field :commenter %>
 </p>
<p>
<%= f.label :Comment %><br>
<%= f.text_area :body %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
<%= link_to 'Back', articles_path %>


</div><!--end left column-->
<div class="four wide column"><!--right column-->
  <p>
  Text
  </p>
  </div><!--end right column-->
  </div>
</div><!--End of main page container-->

enter image description here

1 个答案:

答案 0 :(得分:0)

文章中的链接应该是html,而不是ruby。所以它应该是

<a href='http://www.londoncoffestival.com'>London Coffee Festival</a>

将模板中的代码更改为

<%== @article.text %>

==在这里很重要,它会告诉rails不要在文本中转义html