【问题标题】:get last insert ID获取最后一个插入 ID
【发布时间】:2023-03-16 03:46:01
【问题描述】:

所以问题是当视图函数尝试save()对象时如何获取id。?

我正在使用 dropzonejs 将文件上传到服务器。每当用户drag & drop文件不等待它就会将文件发送到服务器,这工作正常但是

现在我想要文件的id 进行进一步处理,例如

我想要的是:-

如果用户在选择复选框选项中选择two or three 文件,然后单击下一步,渲染页面我想列出所有选定的文件以保存titleediting 等.. 甚至还保存外键。

我试过了:

new_file = Tracks(file = request.FILES['file'])
new_file.save()
pprint.pprint(new_file.id)

控制台日志的输出是

[11/Sep/2014 08:56:34] "GET /app/track-info HTTP/1.1" 200 10112
9L
[11/Sep/2014 08:56:42] "POST /app/upload-tracks HTTP/1.1" 302 0
[11/Sep/2014 08:56:42] "GET /app/upload-tracks HTTP/1.1" 200 9580
10L
[11/Sep/2014 08:57:20] "POST /app/upload-tracks HTTP/1.1" 302 0

以上结论when each file upload happen 1 *id* is printing

#upload.html
<div class="tb-column col-5"><p class="name" data-dz-name></p></div>
<div class="tb-column col-2"><p class="size" data-dz-size></p></div>
<div class="select"><input type="checkbox" class="checkBox" value="???" id="check"></div>

所以从我想要达到的目的来看,我只需要复选框的值....

如何根据来自控制台日志的输出(如 9L、10L 等)识别特定的 HTML 元素

我怎样才能写value="???",它会自动获取文件的ID。?

我昨天问了不同的question 以及一些与此相关的问题,但我很难将文件存储到数据库中,所以我放弃了这个想法。

【问题讨论】:

    标签: jquery python django html dropzone.js


    【解决方案1】:

    我猜你把视图之类的保存文件写到了数据库中?

    那么这里的答案将帮助您在 html 页面中最后插入 id

    先写两个视图(请求)。

    1. 用于呈现页面模板和上下文。
    2. 第二个视图是where file handling 并获取id

    喜欢:

    def view_second(request)
            if request.method == 'POST':
                if form valid:
                    #get file here
                    new.save()
                    msg = new.id
                return HttpResponse(msg)
    

    就是这样,现在在 dropzone 脚本之后的 html 中..

    Dropzone.options.myDropzone = {
      init: function() {
        this.on("success", function(file, response) {
          #alert(response)  
        });
    

    所以在回复中你会得到id

    【讨论】:

      猜你喜欢
      • 2011-04-30
      • 2011-06-01
      • 1970-01-01
      • 2011-05-07
      • 1970-01-01
      • 2016-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多