【发布时间】:2012-08-03 00:09:10
【问题描述】:
目前,当我的应用中的用户创建新的职位发布时,他们会输入一个链接到其网站上的职位页面的 URL。然后我想用这个链接到他们的网站。
它以job.job_url 的形式存储在我的数据库中,并且我在控制器中定义了一个对象@link 来查找工作和相关URL。
我目前有以下代码来循环所有作业并提供链接:
<section id="job-wrapper">
<% @jobs.each do |job| %>
<%= link_to @link.job_url do %>
<%= job.title %>
<%= job.location %>
<%= job.job_type %>
<%= job.salary %>
<%= job.company %>
<% end %>
<% end %>
</section>
我遇到的问题是,如果没有包含 http:// 的 URL,rails 会假定该链接是内部链接,因此会生成类似 localhost:3000/www.google.com 的链接。
有没有办法让我确保 Rails 只将链接识别为实例中的外部链接?或者,除非用户已经说明,否则有人可以解释我如何将http:// 添加到创建时的所有链接中?
提前感谢您的帮助!
【问题讨论】:
-
为了确保您的用户在所有 url 前加上
http://,我建议您编写一个自定义验证器。这些链接将有所帮助:1) [guides.rubyonrails.org/…] 和 2) [stackoverflow.com/questions/161738/…
标签: ruby-on-rails ruby-on-rails-3