1
當前,當我的應用程序中的用戶創建新的工作職位時,他們輸入的URL鏈接到他們網站上的職位頁面。然後我想用它鏈接到他們的網站。鏈接到外部URL對象RoR
它存儲在我的數據庫中作爲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假定鏈接是內部的,因此產生一個鏈接像localhost:3000/www.google.com
。
有沒有一種方法可以確保Rails僅將鏈接識別爲實例中的外部鏈接?或者,有人可以解釋如何將http://
添加到創建的所有鏈接,除非用戶已經聲明瞭它?
在此先感謝您的幫助!
HTTP: //stackoverflow.com/questions/5012188/rails-link-to-exte rnal-site-url-is-attribute-of-user-table-like-users-websit – 2012-08-02 14:44:31
檢查http://stackoverflow.com/questions/5012188/rails-link-to-external-site-url-is-attribute -of-user-table-like-users-websit – 2012-08-02 14:45:46
爲了確保你的用戶用'http://'前綴所有url,我建議你寫一個自定義驗證器。這些鏈接將有助於:1)[http://guides.rubyonrails.org/active_record_validations_callbacks.html#custom-validators]和2)[http://stackoverflow.com/questions/161738/what-is-the-best-正則表達式來檢查,如果-A-字符串是一個有效的URL] – Gooner 2012-08-02 14:55:02