2010-11-15 16 views
0

J'utilise Carrierwave (https://github.com/jnicklas/carrierwave). Je dois m'assurer que les images se conforment à une hauteur maximale/minimale et à une largeur de ? Sinon, une erreur devrait s'afficher.Comment se conformer à une largeur/hauteur max/min

Est-ce que cela doit être géré dans la classe uploader ou dans le modèle (éventuellement via une méthode de validation personnalisée)?

Répondre

0

Vous pouvez valider la largeur/hauteur de l'image côté client, mais cela ne garantit rien, car il est facile à manipuler/contourner.

Pour la facilité d'utilisation: vérifiez sur le côté client et donnez un avertissement avant de télécharger. Pour l'intégrité des données, vérifiez sur le côté serveur après le téléchargement.

+0

Je connais le côté client. La validation de la largeur/hauteur min/max ne peut donc être effectuée qu'après le téléchargement de l'image? Ne peut pas être fait avant ou pendant? –

+0

Vous ne pouvez rien faire côté serveur * avant * le téléchargement. Vous n'avez pas d'image. Vous pourriez être en mesure d'extraire certaines données de l'en-tête de l'image, mais cela pourrait être assez complexe à réaliser, car vous devez pirater Rack (qui gère le téléchargement du fichier). – Ariejan