Django import csv HTML



我目前尝试导入CSV文件到django项目中,而不使用django admin。我写的代码似乎在python运行时工作,但我不确定如何构建HTML模板,因为我似乎找不到任何例子。是否有人能够张贴一个例子或指出我在正确的方向

我的代码是

形式
class DataInput(forms.Form):
    file = forms.FileField()

def save(self):
    records = csv.reader(self.cleaned_data["file"])
    for line in records:
        parts = Part()
        parts.supplier_id = line[0]
        parts.name = line[1]
        parts.description = line[2]
        parts.save()
视图

def csv_import(request):
    if request.method == "POST":
        form = DataInput(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            success = True
            context = {"form": form, "success": success}
            return render_to_response("imported.html", context,
            context_instance=RequestContext(request))
    else:
        form = DataInput()
        context = {"form": form}
        return render_to_response("imported.html", context,
        context_instance=RequestContext(request))

thanks in advance

如果您只想使用默认的表单呈现,那么您的上传模板将看起来像这样:

<!DOCTYPE html>
<html>
    ...
    <form enctype="multipart/form-data" method="post" action=".">
        {{ form }}
    </form>
    ...
</html>

区别的部分是enctype="multipart/form-data",它允许它处理文件上传字段。