私は現在画像をアップロードするために以下のファイルを持っていますが、ユーザが50px
以下のファイルをアップロードすることを禁止する制限を加えたいとします。height
。これは可能ですか?Rails file_field size restrictions
file_field "form", "image", accept: 'image/png,image/gif,image/jpeg'
私は現在画像をアップロードするために以下のファイルを持っていますが、ユーザが50px
以下のファイルをアップロードすることを禁止する制限を加えたいとします。height
。これは可能ですか?Rails file_field size restrictions
file_field "form", "image", accept: 'image/png,image/gif,image/jpeg'
Railsの中にJSとの作品は、多分これはあなたを助ける方法を読む:あなたがMiniMagick
を使用する場合Reference
validate :validate_image_size
def validate_image_size
image = MiniMagick::Image.open(picture.path)
unless image[:height] < 50
errors.add :image, "should be 50px minimum!"
end
end
これはあなたのために動作します。
これは可能ですか?
はい、可能ですが、クライアント側で行うにはjavascriptが必要です。ここでは例です。そのhtml入力をrailsヘルパーに変更します。
HTML
<input id="image" name="img" type="file" />
/* */
<img src="#" alt="This image is going to load" id="image_on_load" />
<p id='image_info_width'> </p>
<p id='image_info_heigth'> </p>
JSコード:
この例では画像がアップロードされ、幅と高さを取得するには、ことができました。
、このいずれかを試してみてください 7 Must-Reads about JavaScript with Ruby on Rails
私は高さにアクセスしようとしたときに私の端末をフリーズしました – stackjlei
私はあなたに理解のための参照を与える、それを使用するバディ –
あなたのコードをコメントに投稿してください。 –