使用 enctype= "multipart/form-data" 选择上传的文件的文件名传递到 Golang 中的结构字段



我的应用程序使用表单的 html 代码片段上传文件

<form  method="POST" action="/addproduct" enctype="multipart/form-data">
        <label class="form-control-label" for="productimage"></label>
        {{with .Errors.image}}
        <div class="alert alert-danger">
            {{.}}
        </div>
        {{end}}     
        <input type="file" name="productimage" id = "productimage" multiple="multiple" class = "btn btn-danger">
        <input type="submit" name="submit" value="Submit" class = "btn btn-info">
    </form>

我需要获取上传文件的文件名并将其传递给 Golang 中的结构字段。

    file, header, err := r.FormFile("productimage")
    defer file.Close()
    if err != nil {
        http.Error(w, err.Error(), http.StatusInternalServerError)
    }
    var pimage = header.Filename 
p := &Product{
    Puid:     Puid(),
    Pname:    r.FormValue("productName"),
    Quantity: r.FormValue("quantity"),
    Price:    r.FormValue("price"),
    Image:    pimage,
}

我正在尝试将选择上传的文件的名称传递到结构"产品"的"图像"字段。关于如何做到这一点的任何建议?

与其调用r.FormFile(),不如尝试:

mpr, _ := r.MultipartReader()
filePart, _ := r.NextPart()
fileName := filePart.FileName()

但是,我会检查错误:)

相关内容

  • 没有找到相关文章

最新更新