I'm trying to figure out how to upload a file. I've got a model that looks like:
class DataSet(models.Model): file = models.FileField(upload_to='data/%Y/%m/%d') and my view method is: def create_data_set(request): if request.method == 'POST': form = DataSetForm(request.POST, request.FILES) if form.is_valid(): f = request.FILES['file'] data_set = DataSet() data_set.save('foo', f) return HttpResponseRedirect("/") print "invalid" else: form = DataSetForm() ctx = {'form': form} ctx.update(csrf(request)) return render_to_response('chart/data_set.html', ctx) with a form.... class DataSetForm(forms.Form): file = forms.FileField() When I execute this, I get a form containing a file picker (so far, so good), but when I submit the form I get a mysterious error (below). What am I doing wrong? Environment: Request Method: POST Request URL: http://localhost:8000/dataset/create Django Version: 1.3 Python Version: 2.6.1 Installed Applications: ['django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'chart'] Installed Middleware: ('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware') Traceback: File "/Users/roy/lib/webchart/lib/python2.6/site-packages/Django-1.3- py2.6.egg/django/core/handlers/base.py" in get_response 111. response = callback(request, *callback_args, **callback_kwargs) File "/Users/roy/WebChart/chart/views.py" in create_data_set 27. data_set.save('foo', f, False) File "/Users/roy/lib/webchart/lib/python2.6/site-packages/Django-1.3- py2.6.egg/django/db/models/base.py" in save 459. raise ValueError("Cannot force both insert and updating in model saving.") Exception Type: ValueError at /dataset/create Exception Value: Cannot force both insert and updating in model saving. -- 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.