2

私はペーパークリップを使用してアバターをユーザーに添付します。これは正常に機能しますが、新しいユーザーが登録しようとすると、アバターが小さすぎて適切なタイプではないという不平を言います。

これは私のアバターを検証する方法です:

validates_attachment_size :avatar, :less_than => 1.megabytes
validates_attachment_content_type :avatar, :content_type => ['image/jpeg', 'image/png', 'image/gif']

これは、登録しようとすると発生するエラーです。

There were problems with the following fields:

* Avatar file size file size must be between 0 and 1048576 bytes.
* Avatar content type is not included in the list

アバターを空白にできるようにする方法はありますか?

4

3 に答える 3

2

これがうまくいくかどうかはわかりませんが、試してみてください:

validates_attachment_size :avatar, :less_than => 1.megabytes, :if => avatar_changed?
validates_attachment_content_type :avatar, :content_type => ['image/jpeg', 'image/png', 'image/gif'], :if => avatar_changed?
于 2009-12-24T11:31:05.100 に答える
1

私はペーパークリップを使用しませんでしたが、通常、Rails では条件を追加して、検証を実行するかどうかを決定できます。

validates_attachment_size :avatar, 
  :less_than => 1.megabytes, 
  :unless => "avatar.blank?"

アバターに影響するすべての検証に同様の条件を追加する必要があります。詳細を知りたい場合は、こちらをご覧ください。

于 2009-12-24T11:37:55.567 に答える
0

それはもっと似ています:

validates_attachment_size :avatar, :less_than => 1.megabytes, :unless => "avatar_content_type.blank?"

于 2010-06-04T08:19:50.307 に答える