Re: upload file isn't working

2011-06-27 Thread raj
How do you view the debugger? I am using webfaction hosting.
Otherwise, does the code look fine?

On Jun 27, 5:48 am, Malcolm Box  wrote:
> On 24 June 2011 17:36, raj  wrote:
>
>
>
>
>
>
>
>
>
> > 
> > def upload_view(request):
> >    user = request.user
> >    if user.is_authenticated():
> >        if request.method == 'POST':
> >            form =upload_form(request.POST, request.FILES, user)
> >            if form.is_valid():
> >                file_instance = upload_model()
> >                saved_file = handle_uploads(request, ['doc'])
> > #request.POST.get('title'))
> >                for f in saved_file:
> >                    setattr(file_instance, f[0])
> >                file_instance.save()
> >                return HttpResponseRedirect('/user/update/success/')
> >        else:
> >            form = upload_form()
> >    return render_to_response('/home/oneadmin/webapps/oneadmin/
> > oneadmin/templates/oneadmissions/documents.html', {'form':form},
> > context_instance = RequestContext(request))
>
> > my urls.py file has a url that links to the upload_view. I just cant
> > seem to find why the file isn't uploading. Whenever I try to upload
> > something, it just refreshes the page and states that the given fields
> > are required (even though I entered all the information). Help please.
>
> It looks to me like form.is_valid() is returning False, so you're seeing the
> error messages.
> You can debug the cause by putting
>
> import pdb;pdb.set_trace()
>
> just above the "if form.is_valid():" line and then stepping through the
> validation code in the debugger.
>
> Malcolm

-- 
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 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.



Re: upload file isn't working

2011-06-27 Thread Malcolm Box
On 24 June 2011 17:36, raj  wrote:

> 



> def upload_view(request):
>user = request.user
>if user.is_authenticated():
>if request.method == 'POST':
>form =upload_form(request.POST, request.FILES, user)
>if form.is_valid():
>file_instance = upload_model()
>saved_file = handle_uploads(request, ['doc'])
> #request.POST.get('title'))
>for f in saved_file:
>setattr(file_instance, f[0])
>file_instance.save()
>return HttpResponseRedirect('/user/update/success/')
>else:
>form = upload_form()
>return render_to_response('/home/oneadmin/webapps/oneadmin/
> oneadmin/templates/oneadmissions/documents.html', {'form':form},
> context_instance = RequestContext(request))
>
> my urls.py file has a url that links to the upload_view. I just cant
> seem to find why the file isn't uploading. Whenever I try to upload
> something, it just refreshes the page and states that the given fields
> are required (even though I entered all the information). Help please.
>
>
It looks to me like form.is_valid() is returning False, so you're seeing the
error messages.
You can debug the cause by putting

import pdb;pdb.set_trace()

just above the "if form.is_valid():" line and then stepping through the
validation code in the debugger.

Malcolm

-- 
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 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.



Re: upload file isn't working

2011-06-24 Thread raj
another thing is the fact that the file name isn't changing, even
though I'm trying to change it.

On Jun 24, 12:36 pm, raj  wrote:
> # models.py #
>
> def content_file_name(instance, filename):
>     return '/'.join(['uploads', instance.user.username, 'docs',
> filename])
>
> class upload_model(User):
>     user = models.ForeignKey(User, related_name = 'user_upload')
>     title = models.CharField(max_length = 50)
>     doc = models.FileField(upload_to = content_file_name)
>     objects = UserManager()
>
> # admin.py #
>
> class upload_admin(admin.ModelAdmin):
>     fields = ['user', 'title', 'doc']
>
> admin.site.register(upload_model, upload_admin)
>
> # Uforms.py #
>
> class upload_form(ModelForm):
>     class Meta:
>         model = upload_model
>         fields=['title', 'doc']
>
>     title = forms.CharField(max_length = 50, label = _('Document
> Title:'), required = True, help_text = _("This field is required."))
>     doc = forms.FileField()
>
> # views2.py #
>
> def handle_uploads(request, key): #title):
>     saved=[]
>
>     upload_dir = settings.UPLOAD_PATH % request.user.username
>     upload_full_path =os.path.join(settings.MEDIA_ROOT, upload_dir)
>
>     if not os.path.exists(upload_full_path):
>         os.makedirs(upload_full_path)
>
>     for key in keys:
>         if key in request.FILES:
>             upload = request.FILES[key]
>             while os.path.exists(os.path.join(upload_full_path,
> upload.name)):
>                 if (request.user.username not in upload.name) and
> (request.user.first_name not in upload.name):
>                     upload.name = request.user.username + "_" +
> upload.name
>             dest = open(os.path.join(upload_full_path, upload.name),
> 'wb')
>             for chunk in upload.chunks():
>                 dest.write(chunk)
>             dest.close()
>             saved.append((key, os.path.join(upload_dir,
> upload.name)) )
>     return saved
>
> def upload_view(request):
>     user = request.user
>     if user.is_authenticated():
>         if request.method == 'POST':
>             form =upload_form(request.POST, request.FILES, user)
>             if form.is_valid():
>                 file_instance = upload_model()
>                 saved_file = handle_uploads(request, ['doc'])
> #request.POST.get('title'))
>                 for f in saved_file:
>                     setattr(file_instance, f[0])
>                 file_instance.save()
>                 return HttpResponseRedirect('/user/update/success/')
>         else:
>             form = upload_form()
>     return render_to_response('/home/oneadmin/webapps/oneadmin/
> oneadmin/templates/oneadmissions/documents.html', {'form':form},
> context_instance = RequestContext(request))
>
> my urls.py file has a url that links to the upload_view. I just cant
> seem to find why the file isn't uploading. Whenever I try to upload
> something, it just refreshes the page and states that the given fields
> are required (even though I entered all the information). Help please.

-- 
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 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.



upload file isn't working

2011-06-24 Thread raj
# models.py #

def content_file_name(instance, filename):
return '/'.join(['uploads', instance.user.username, 'docs',
filename])

class upload_model(User):
user = models.ForeignKey(User, related_name = 'user_upload')
title = models.CharField(max_length = 50)
doc = models.FileField(upload_to = content_file_name)
objects = UserManager()

# admin.py #

class upload_admin(admin.ModelAdmin):
fields = ['user', 'title', 'doc']

admin.site.register(upload_model, upload_admin)

# Uforms.py #

class upload_form(ModelForm):
class Meta:
model = upload_model
fields=['title', 'doc']

title = forms.CharField(max_length = 50, label = _('Document
Title:'), required = True, help_text = _("This field is required."))
doc = forms.FileField()


# views2.py #

def handle_uploads(request, key): #title):
saved=[]

upload_dir = settings.UPLOAD_PATH % request.user.username
upload_full_path =os.path.join(settings.MEDIA_ROOT, upload_dir)

if not os.path.exists(upload_full_path):
os.makedirs(upload_full_path)

for key in keys:
if key in request.FILES:
upload = request.FILES[key]
while os.path.exists(os.path.join(upload_full_path,
upload.name)):
if (request.user.username not in upload.name) and
(request.user.first_name not in upload.name):
upload.name = request.user.username + "_" +
upload.name
dest = open(os.path.join(upload_full_path, upload.name),
'wb')
for chunk in upload.chunks():
dest.write(chunk)
dest.close()
saved.append((key, os.path.join(upload_dir,
upload.name)) )
return saved

def upload_view(request):
user = request.user
if user.is_authenticated():
if request.method == 'POST':
form =upload_form(request.POST, request.FILES, user)
if form.is_valid():
file_instance = upload_model()
saved_file = handle_uploads(request, ['doc'])
#request.POST.get('title'))
for f in saved_file:
setattr(file_instance, f[0])
file_instance.save()
return HttpResponseRedirect('/user/update/success/')
else:
form = upload_form()
return render_to_response('/home/oneadmin/webapps/oneadmin/
oneadmin/templates/oneadmissions/documents.html', {'form':form},
context_instance = RequestContext(request))

my urls.py file has a url that links to the upload_view. I just cant
seem to find why the file isn't uploading. Whenever I try to upload
something, it just refreshes the page and states that the given fields
are required (even though I entered all the information). Help please.

-- 
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 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.