Re: Having avatar ImageField in UserProfile

2007-12-27 Thread Dmitry Lipovoi

try to get_FIELDNAME_width() and get_FIELDNAME_height() methods of
model.

On Dec 26, 9:26 am, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
> Ok,
>
> I was able to get much of the stuff going...There's one main question
> I have now
>
> 1) I have an avatar field (ImageField type) in my form..and I want to
> check for a valid size of the avatar image in the clean_avatar(self)
> method of my form.
> How can I get access to the uploaded file and content so that any
> images greater than a defined size will throw a validationerror ?
>
> Any help is greatly appreciated.
>
> thanks,
> -pranav.
>
> On Dec 25, 4:57 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
>
> > I am new to Django and python overall. The django experience thus far,
> > has been great -- immensely satisfying. The only regret I have is not
> > getting on the django bandwagon earlier.
>
> > Anyways, as I've been trying to code away, I hit a stumbling block
> > while using the newforms and imagefield. the django trunk has changed
> > quite a bit. and some of the examples I found on the web were using
> > the older versions of Django.
>
> > Here's my problem - I have a userprofile, which has an additional
> > avatar (ImageField) and a website (URLField). I created a
> > UserProfileManager as below:
>
> > {{ BEGIN CODE }}
>
> > 
>
> > class UserProfileManager(models.Manager):
>
> > def create_user(self, username, password, email, avatar, website):
>
> > new_user = User.objects.create_user(username, email, password)
> > new_user.save()
>
> > registration_profile = self.create_profile(new_user, avatar,
> > website)
>
> > def create_profile (self, new_user, avatar, website):
> > return self.create(user=new_user, avatar=avatar,
> > website=website)
>
> > class UserProfile(models.Model):
> > user = models.ForeignKey(User, unique=True)
> > avatar = models.ImageField(upload_to="/pics/")
> > website = models.CharField(maxlength=255)
>
> > objects = UserProfileManager()
>
> > class Meta:
> > verbose_name = 'User Profile'
>
> > class Admin:
> > pass
>
> > def __unicode__(self):
> > return "User Profile for %s" % self.user
>
> > {{ THE FORM IS BELOW }}
>
> > class UserProfileForm(forms.Form):
> > username = forms.CharField(maxlenght=30, label='Username')
> > password1 =
> > forms.CharField(widget=forms.PasswordInput(render_value=False),label='Password')
> > password2 =
> > forms.CharField(widget=forms.PasswordInput(render_value=False),label='Password
> > Again')
> > email = forms.EmailField(label='Email')
> > avatar = forms.ImageField(upload_to='/pics/')
> > website = forms.URLField()
>
> > def clean_username(self):
> >if not alnum_re.search(self.cleaned_data['username']):
> >raise forms.ValidationError('Username can contain only
> > alphanumeric')
> >try:
> >user =
> > User.objects.get(username__exact=self.cleaned_data['username'])
> >except User.DoesNotExist:
> >raise forms.ValidationError('Username already taken')
>
> > def clean_avatar(self):
>
> > {{END FORM }}
>
> > {{BEGIN VIEW}}
>
> > def create(request):
> > if request.method == 'POST':
> > data = request.POST.copy()
> > form = UserProfileForm(data, request.FILES)
>
> > if form.is_valid():
>
> > {{ END VIEW }}
>
> > As you would have noticed above, the form, model and view are
> > incomplete. The reason is because I am not entirely sure on the 'best
> > practice' for handling the image data..
>
> > Based on my understanding, I have the following questions:
>
> > 1) For the latest SVN Django version, the validation of imagefield
> > will be handled by django itself (Valid jpg / gif/bmp file)..is that
> > correct ?
>
> > 2) The idea is that in the save method of the form, I will call the
> > UserProfileManager.objects.create_user() method.
> > Do, I need to pass the actual image as an argument to this method or
> > will django have  saved this filed already ?
>
> > IF I do need to pass the actual image (binary data) to the
> > create_user() method in the model manager, how does the model handle
> > saving the actual binary data and the filename
>
> > Where would i be using the save_FOO_File() and the get_FOO_size()
> > methods ?
>
> > 3) Where should I do checking for the size of the file being
> > uploaded...I know it should go into the form..but any helper methods I
> > could use ?
>
> > Some of these questions may sound really dumb...but bear with me --
> > I'm still very new to django.
>
> > thanks,
> > -pranav.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~-

Re: Having avatar ImageField in UserProfile

2007-12-25 Thread [EMAIL PROTECTED]

Ok,

I was able to get much of the stuff going...There's one main question
I have now

1) I have an avatar field (ImageField type) in my form..and I want to
check for a valid size of the avatar image in the clean_avatar(self)
method of my form.
How can I get access to the uploaded file and content so that any
images greater than a defined size will throw a validationerror ?

Any help is greatly appreciated.

thanks,
-pranav.

On Dec 25, 4:57 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
> I am new to Django and python overall. The django experience thus far,
> has been great -- immensely satisfying. The only regret I have is not
> getting on the django bandwagon earlier.
>
> Anyways, as I've been trying to code away, I hit a stumbling block
> while using the newforms and imagefield. the django trunk has changed
> quite a bit. and some of the examples I found on the web were using
> the older versions of Django.
>
> Here's my problem - I have a userprofile, which has an additional
> avatar (ImageField) and a website (URLField). I created a
> UserProfileManager as below:
>
> {{ BEGIN CODE }}
>
> 
>
> class UserProfileManager(models.Manager):
>
> def create_user(self, username, password, email, avatar, website):
>
> new_user = User.objects.create_user(username, email, password)
> new_user.save()
>
> registration_profile = self.create_profile(new_user, avatar,
> website)
>
> def create_profile (self, new_user, avatar, website):
> return self.create(user=new_user, avatar=avatar,
> website=website)
>
> class UserProfile(models.Model):
> user = models.ForeignKey(User, unique=True)
> avatar = models.ImageField(upload_to="/pics/")
> website = models.CharField(maxlength=255)
>
> objects = UserProfileManager()
>
> class Meta:
> verbose_name = 'User Profile'
>
> class Admin:
> pass
>
> def __unicode__(self):
> return "User Profile for %s" % self.user
>
> {{ THE FORM IS BELOW }}
>
> class UserProfileForm(forms.Form):
> username = forms.CharField(maxlenght=30, label='Username')
> password1 =
> forms.CharField(widget=forms.PasswordInput(render_value=False),label='Password')
> password2 =
> forms.CharField(widget=forms.PasswordInput(render_value=False),label='Password
> Again')
> email = forms.EmailField(label='Email')
> avatar = forms.ImageField(upload_to='/pics/')
> website = forms.URLField()
>
> def clean_username(self):
>if not alnum_re.search(self.cleaned_data['username']):
>raise forms.ValidationError('Username can contain only
> alphanumeric')
>try:
>user =
> User.objects.get(username__exact=self.cleaned_data['username'])
>except User.DoesNotExist:
>raise forms.ValidationError('Username already taken')
>
> def clean_avatar(self):
>
> {{END FORM }}
>
> {{BEGIN VIEW}}
>
> def create(request):
> if request.method == 'POST':
> data = request.POST.copy()
> form = UserProfileForm(data, request.FILES)
>
> if form.is_valid():
>
> {{ END VIEW }}
>
> As you would have noticed above, the form, model and view are
> incomplete. The reason is because I am not entirely sure on the 'best
> practice' for handling the image data..
>
> Based on my understanding, I have the following questions:
>
> 1) For the latest SVN Django version, the validation of imagefield
> will be handled by django itself (Valid jpg / gif/bmp file)..is that
> correct ?
>
> 2) The idea is that in the save method of the form, I will call the
> UserProfileManager.objects.create_user() method.
> Do, I need to pass the actual image as an argument to this method or
> will django have  saved this filed already ?
>
> IF I do need to pass the actual image (binary data) to the
> create_user() method in the model manager, how does the model handle
> saving the actual binary data and the filename
>
> Where would i be using the save_FOO_File() and the get_FOO_size()
> methods ?
>
> 3) Where should I do checking for the size of the file being
> uploaded...I know it should go into the form..but any helper methods I
> could use ?
>
> Some of these questions may sound really dumb...but bear with me --
> I'm still very new to django.
>
> thanks,
> -pranav.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---