Hi, I encounter a problem.
In my user models there is an atrrbution: user.avatar = ImageField
('avatar', upload_to=AVATAR_TEMP_DIR, blank=True, null=True)
then i use a modelform as an create user form. And the avatar is
uploaded corrcet. Which upload to AVATAR_TEMP_DIR, then I move the
avatar into AVATAR_ORIGINAL_PATH and make user.avatar._name as
AVATAR_ORIGINAL_PATH % user.id
After this, then I try to change an avatar. So I user another
modelform to update. however, this time the avatar cannot be uploaded
to AVATAR_TEMP_DIR, so I also cannot move the avatar to
AVATAR_ORIGINAL_PATH.
It seems that, after create the user. the AVATAR_TEMP_DIR set to
upload_to is lost, so the program doesn't know where to upload the
file.
Can anyone help me to solve this problem? Thank you very much.
class UserForm(forms.ModelForm):
class Meta:
model = User
fields = ('name', 'user_avatar', 'description')
class UserAvatarForm(forms.ModelForm):
class Meta:
model = User
fields = ('user_avatar')
@login_required
def user_create(request):
if request.method == 'POST':
form = UserForm(request.POST, request.FILES)
if form.is_valid():
user = form.save(commit=False)
user.save()
user.handle_upload_user_avatar() # move image from
AVATAR_TEMP_DIR to AVATAR_ORIGINAL_PATH
user.save()
return HttpResponseRedirect(user.url)
else:
form = UserForm()
return render_to_response('user/user_create.html', locals())
@login_required
def settings_user_avatar(request, user_name):
user = get_object_or_404(User, name=user_name)
if request.method == 'POST':
form = UserAvatarForm(request.POST, request.FILES,
instance=user)
if form.is_valid():
user = form.save()
user.handle_upload_user_avatar() # move image from
AVATAR_TEMP_DIR to AVATAR_ORIGINAL_PATH
user.save()
return HttpResponseRedirect(user.url)
else:
form = UserAvatarForm(instance=user)
return render_to_response('user/user_avatar.html', locals())
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django users" group.
To post to this group, send email to [email protected]
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
-~----------~----~----~----~------~----~------~--~---