Ruby on Rails 3 で「 paperclip」gem を使用していますが、このアプローチでカスタム プレゼンス検証を処理したいと考えています。 ' このフィールドに対してエラーをスローします。"./Users/Desktop/image.gif
C:/Users/Desktop/image.gif
RoR は「file_field」を他のフィールドとは異なる方法で処理するため、これを行うには問題があると思います。
注意: 「paperclip」にある「validates_attachment_presence」メソッドを使用したくありません。
私がやりたいことをするのは良いアプローチですか?もしそうなら、それを行う方法は?
コントローラーでコードを試しました:
if params[:user][:avatar].blank?
# I also used
# - 'nil?' instead of 'blank'
# - !params[:user][:avatar]
@user.errors.add( :avatar, "can not be blank" )
end
しかし、空のファイル (nil/空のパス値) でフォームを送信しようとすると、
NoMethodError 予期
しないときに nil オブジェクトがあります!
ActiveRecord::Base のインスタンスを期待していたかもしれません。
nil の評価中にエラーが発生しました。[]