Ruby on Rails符号验证

Kev*_*vin 1 validation ruby-on-rails

我有这个型号:

class Story < ActiveRecord::Base
    validates_presence_of :name , :link
end
Run Code Online (Sandbox Code Playgroud)

对表单进行验证的地方.但我还要验证字符串"http"是否包含在:link符号中.我不能这样做:link.include?因为:链接是符号.我怎么做?

我的观点是这样的:

<% form_for :story do |f| %>
<p>
  name:<br />
  <%=f.text_field :name %>
</p>
<p>
  link:<br />
  <%= f.text_field :link %>
</p>
<p>
  <%= submit_tag :"submit this story" %>
</p>
<% end %>
Run Code Online (Sandbox Code Playgroud)

Pet*_*ton 7

如果添加validates_format_of,则可以提供正则表达式来测试链接.

class Story < ActiveRecord::Base
    validates_presence_of :name , :link
    validates_format_of :link, :with => /^http.*$/
end
Run Code Online (Sandbox Code Playgroud)