在Djang中从数据库上载/删除文件

2024-09-27 19:21:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我在想办法删除我上传到django的一个旋转木马上的图片。有人能解决这个问题吗?我在网上找不到任何清晰的例子。你可以假设我已经导入了所有的东西,并且所有的模型都是正确的。在

我的代码如下:

在旋转木马.html公司名称:

 {% load staticfiles %}
{% load filename %}

<div class="container">
    <div class="row">
        <div class="col-md-12">
            <div id="myCarousel" class="carousel slide" data-ride="carousel">


                <div class="carousel-inner" role="listbox">
                    {% for document in documents %}
 <div class="item {% if forloop.first %} active {% endif %}"> 
    <div class="row">
      <div class="col">
        <li><a href = "{{document.docfile.url}}">{{document.docfile.name}}</a></li>
        <img src = "{{STATIC_URL}}img/{{document|filename}}" >
<p align="center"><form style="text-align:center" action="{% url 'webportal:delete' %}" method="post" enctype="multipart/form-data">
            {% csrf_token %}
<p>{{ form.non_field_errors }}</p>
            <p>{{ form.Document.label_tag }} {{ form.docfile.help_text }}</p>
            <p>
                {{ form.Document.errors }}
                {{ form.Document }}
            </p> 
            <p><input type="submit" value="Delete" /></p>
        </form></p>
      </div>
    </div>
  </div>
  {% endfor %}
                </div>
                <a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
                    <span class="glyphicon glyphicon-chevron-left"></span>
                    <span class="sr-only">Previous</span>
                </a>
                <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
                    <span class="glyphicon glyphicon-chevron-right"></span>
                    <span class="sr-only">Next</span>
                </a>
            </div>
            <!-- /.carousel -->
        </div>
    </div>
<form action="{% url 'webportal:carousel' %}" method="post" enctype="multipart/form-data">
            {% csrf_token %}
            <p>{{ form.non_field_errors }}</p>
            <p>{{ form.docfile.label_tag }} {{ form.docfile.help_text }}</p>
            <p>
                {{ form.docfile.errors }}
                {{ form.docfile }}
            </p>
            <p><input type="submit" value="Upload" /></p>
        </form>

</div>

在视图.py在

^{pr2}$

Tags: divformurldatadocumentclassrolehref
1条回答
网友
1楼 · 发布于 2024-09-27 19:21:43

你不想在一个视图中处理太多。你可以,但这使得代码的维护变得难看。最好添加一个单独的视图进行删除。在你的模板循环中。在

<a href='{% url 'delete_document' pk=document.pk %}'>delete</a> 

然后添加一个带有pk参数的新url模式:

^{pr2}$

以及一个像:

def delete_document(request, pk):
    try:
        Docuent.objects.get(pk=pk).delete()
    except Document.DoesNotExist:
        pass
    return HttpResponseRedirect(...)

相关问题 更多 >

    热门问题