如何验证我的文件字段的格式是否正确?Rails如何验证文件格式?
我想要图像字段验证它是一个.png,.jpg,.jpeg。
而且它有结束的FLV
的FLV等,它的扩展名为.MOV
而如何将影片做我创建的错误信息,告诉该字段是无效的。
我simple_form_for:
<%= f.input :name, :label => 'Navn', :required => true %><br />
<%= f.label :tekst %><br />
<%= f.text_area :text, :label => 'Text', :size => '12x12' %><br />
<%= f.label "Upload billede - kræves" %><br />
<%= f.input :image, :label => '', :required => true %><br />
<%= f.label "Upload flv - kræves" %><br />
<%= f.input :flv, :label => '', :required => true %><br />
<%= f.label "Upload Quicktime - kræves" %><br />
<%= f.input :quicktime, :label => '', :required => true %><br />
<%= f.button :submit, :value => 'Create movie' %>
更新:
我必须弄清楚如何验证.MOV或.flv领域:
validates_format_of :flv,
:with => %r{\.flv$}i, :message => "file must be in .flv format"
validates_format_of :mov,
:with => %r{\.mov$}i, :message => "file must be in .mov format"
我只是鸵鸟政策有找到了验证图像的解决方案。
我的控制器:
def savenew
@photographer = Photographer.new(params[:photographer])
@photographer.sort_order = Photographer.count + 1
if @photographer.save
redirect_to :action => 'list', :id => params[:id]
flash[:notice] = "Movie #{@photographer.name} is created"
else
render 'create', :id => params[:id]
end
end
我不知道rails,所以留下来作为评论,但是这个链接可能有用:http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/38613644108f447a?fwc=1 –
此外,我会建议删除有关文件*扩展*的东西。验证格式与验证扩展非常不同。 –