【问题标题】:Django import csv HTMLDjango 导入 csv HTML
【发布时间】:2014-03-26 17:12:42
【问题描述】:

您好,我目前尝试在不使用 django 管理员的情况下将 csv 文件导入 django 项目。我编写的代码在 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))

提前致谢

【问题讨论】:

  • 不清楚你想要完成什么。什么的例子?代码给你一个错误吗?
  • 对不起,代码似乎工作正常,但我似乎无法获得任何 HTML 模板来允许上传 csv 将其添加到问题中

标签: python django csv


【解决方案1】:

如果您只想使用默认表单呈现,您的上传模板将如下所示:

<!DOCTYPE html>
<html>
    ...

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

    ...
</html>

区别在于enctype="multipart/form-data"lets it handle the file upload field

【讨论】:

    猜你喜欢
    • 2021-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多