Thank you so much! That worked like a charm :). I'm guessing this type of construct is valid for other validators as well?
On Tuesday, March 27, 2012 5:57:28 PM UTC-7, Anthony wrote: > > Try > > IS_EMPTY_OR(IS_IMAGE()) > > > Anthony > > On Tuesday, March 27, 2012 7:12:45 PM UTC-4, Peter G. wrote: >> >> Thanks for the code snippets Anthony--but a minor caveat I didn't realize >> ahead of time is that the user is free to either upload an image or not. If >> the user does not upload an image, the IS_IMAGE() validators barks at the >> user. Is there a easy way of implementing such a logic: "if a file is >> uploaded, check for IS_IMAGE(), otherwise ignore."? >> >> >> On Thursday, March 22, 2012 3:38:01 PM UTC-7, Anthony wrote: >>> >>> On Thursday, March 22, 2012 6:09:25 PM UTC-4, Peter G. wrote: >>>> >>>> I'm using the auth.settengs.extra_fields to add an extra upload field >>>> for the user to upload an avatar, how can I add an IS_IMAGE validator to >>>> the upload field so that the user can't upload random files? >>> >>> >>> When you define the field, you can do: >>> >>> Field('avatar', 'upload', requires=IS_IMAGE()) >>> >>> or after the tables have been defined: >>> >>> db.auth_user.avatar.requires = IS_IMAGE() >>> >>> >>>> >>>> Also, how would I add an IS_ALPHANUMERIC to the built in First name and >>>> Last name form fields? Right now there are users registering with names >>>> like "!@#$%^~" and some such... >>>> >>> >>> After the tables have been defined, you can do: >>> >>> db.auth_user.first_name.requires.append(IS_ALPHANUMERIC()) >>> >>> That adds the validator to the existing IS_NOT_EMPTY validator. >>> >>> However, I wouldn't use that validator for names because it doesn't >>> allow valid name characters such as spaces, hyphens, and apostrophes. >>> Anyway, if you prevent fake names with special characters, those users will >>> just create fake names with alphanumeric characters, so either way you >>> don't have a real name. >>> >>> Anthony >>> >>