2013-10-28 204 views
0

我想通過Django的上傳CSV,但它不工作..如何上傳在SQLite數據庫csv文件的Django

代碼

Views.py

from django.shortcuts import render_to_response 
from forms import UploadForm 
from django.http import HttpResponseRedirect 

def create(request): 
    if request.method == 'POST': 
     form = UploadForm(request.POST, request.FILES) 
     if form.is_valid(): 
      form.save() 
      return HttpResponseRedirect('/success/url/') 
    else: 
     form = UploadForm() 
    return render_to_response('upload.html', {'form': form}) 

網址.py

urlpatterns = patterns('', 
    (r'^$', create), 
    #url(r'^articles/create/$', create, name='done'), 
    url(r'^articles/create/$', 'article.views.create'), 
) 

models.py

from django.db import models 
from time import time 

def get_upload_file_name(instance, filename): 
    return "uploaded_files/%s_%s" % (str(time()).replace('.','_'), filename) 

class Article(models.Model): 
    file = models.FileField(upload_to=get_upload_file_name) 

Forms.py

from django import forms 
from models import Article 

class UploadForm(forms.ModelForm): 
    class Meta: 
     model = Article 

HTML文件

{%csrf_token%} {{form.as_p}}
+0

你確定這篇文章有效嗎? –

回答

0

你的模板必須是:

<form method="post" enctype="multipart/form-data"> 
    {% csrf_token %} 
    {{ form.as_p }} 
    <input type="submit" /> 
</form> 

查看文檔中的binding uploaded files to a form部分。

相關問題