如何从 html.erb 页面中的数据库内容 link_to

How to link_to from the content of the database in a html.erb page

我正在使用 rails 上的 ruby 在 postgres 数据库上写博客 post。 table中post的内容有一些外部链接。我一直在使用 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-->

文章中的 link 应该是 html,而不是 ruby。所以应该是

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

并将模板中的代码更改为

<%== @article.text %>

==在这里很重要,它会告诉rails不要在text

中转义html