如何使用 django 删除图像?

2023-12-14

我想知道如何在表单中添加删除按钮来删除图像。

该项目是一个简单的“图片查看器”,索引显示存储的所有图像,但我想添加一个“x”图标来删除该特定图像。

这是我的代码。

views.py

from django.shortcuts import render, redirect
from gallery.forms import ImageForm
from gallery.models import Image

def index(request, image_form=None):
    image_form = image_form or ImageForm(request.POST, request.FILES)
    if request.method == 'POST':
        if image_form.is_valid():
            new_image = Image(image=request.FILES['image_file'])
            new_image.save()
    # obtenemos el listado de imagenes registradas
    images_list = Image.objects.all().order_by('-id')
    return render(request, 'index.html', {
        'image_form' : image_form,
        'images_list' : images_list,



    })

模型.py

from django.db import models
from django.contrib import admin

class Image(models.Model):
    image = models.FileField(upload_to='static/gallery/%Y/%m/%d')

admin.site.register(Image)

forms.py

from django import forms

class ImageForm(forms.Form):
    image_file = forms.FileField(
        label='choose a file',
        help_text = 'Max 2 megabytes'
    )

索引.html(它显示图像列表)

<style>
    ul {list-style:none; width:800px;}
    ul li {float:left; margin:6px;}
</style>
<form action="./gallery" method="post" enctype="multipart/form-data">
    {% csrf_token %}
    <p> {{ image_form.non_field_errors }} </p>
    <p> {{ image_form.image_file.label_tag }} </p>
    <p> {{ image_form.image_file.help_text }} </p>
    <p>
        {{ image_form.image_file.errors }}

        {{ image_form.image_file }}
    </p>
    <p> <input type="submit" value="subir"> </p>
</form>

<h2>Im&aacute;genes</h2>
<ul>
{% for image in images_list %}
    <li>
        <img src="/{{ image.image }}" height="75" />
    </li>
{% endfor %}

</ul>

我想在index.html 上添加删除按钮来删除图像:D


urls.py

[.........]
url(
   r'^delete-image/(?P<id>\d+)/$', 
   'delete_image', 
   name="delete_image"
),
[.........]

views.py

def delete_image(request, id):
    image = Image.objects.get(pk=id).delete()
    return HttpResponseRedirect(reverse('app_name:url_name'))

template

<ul>
    {% for image in images_list %}
    <li>
        <img src="/{{ image.image }}" height="75" /> 
        <a href="{% url app_name:delete_image image.id %}">Delete</a>
    </li>
    {% endfor %}
</ul>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 django 删除图像? 的相关文章

随机推荐

  • Pandas 版本之间的 MultiIndex/Reshaping 差异

    我有一个使用以下代码的 DataFrame import pandas as pd import numpy as np index pd DatetimeIndex 2017 05 04 2017 05 05 2017 05 08 201
  • Java 套接字数组

    我正在创建服务器和客户端 java 应用程序 我想创建一个数组来存储我的套接字 我正在使用 eclipse 当我输入这一行时 Socket sockets new Socket 3 Eclipse 给我一个错误 说 资源类型 Socket
  • 从主干集合中设置 Fuelux 数据网格源

    我正在尝试从我的主干集合中设置 Fuelux 数据网格源 示例来源在这里https github com ExactTarget fuelux tree master sample 我累了就像 function root factory i
  • 如何处理 pandas 中的插补和热一编码?

    我正在尝试对我的数据集应用插补和热一种编码 我知道在应用插补时 数据的维度可能会发生变化 因此我手动处理了它 该模型运行良好 但后来我决定应用热一种编码 现在 该程序无法编译 我收到尺寸不匹配错误 test X pd get dummies
  • 如何访问 subclipse 在运行时使用的 SVNClientAdapter?

    我正在使用 Subclipse API 我想实现 ISVNNotifyListener 以便我可以了解运行时发生的 subclipse 事件 我相信我需要将我的通知侦听器实例添加 订阅 到客户端适配器将通知的侦听器集 但我不知道如何访问 S
  • 我无法初始化 Google Play 游戏服务

    项目只有这段代码 我只是遵循这个描述 访问https developers google com games services android init 创建项目并添加库 google play services lib 和 BaseGam
  • 使用 Xamarin.Android 将文件上传到谷歌驱动器文件夹

    我想使用 Xamarin Andriod 在 google 驱动器 不是默认位置 的特定文件夹内创建文件 我正在使用下面的代码 MetadataChangeSet changeSetfile new MetadataChangeSet Bu
  • 在 Mac OS X 雪豹上运行 mono 2.10.2 mkbundle 时出现问题

    这一页有关于捆绑包的信息mkbundle 但是当我尝试在 Mac 上使用它时 收到此错误消息 delegate gt mkbundle delegate exe o delegate OS is Darwin Sources 1 Auto
  • Java 小程序下载文件

    我正在尝试构建一个 java 小程序 它将文件下载到客户端计算机 作为一个java应用程序 这段代码工作得很好 但是当我尝试作为一个小程序时 它什么也没做 我已签署 jar 文件 但没有收到任何安全错误消息 代码是 import java
  • 如何判断特定字体是否具有 >64k 的特定字形

    当代码点适合 64 位值时 确定特定 Unicode 字体是否包含该代码点的字形相对容易 if CTFontGetGlyphsForCharacters ctFont chars glyphs 1 It exists 但 CTFontGet
  • android 数据绑定无法正常工作

    我想帮助解决问题 首先 按照我的代码的详细信息 build gradle Project android buildscript repositories jcenter mavenCentral maven url home melti
  • EF 4 Code First - 组合视图和表

    我研究这个问题好几天了 似乎找不到一个让我感觉良好的选择 但是 这里有一个非常相似的问题的链接 将计算字段添加到模型 最后 我也有同样的问题 但希望有更好的解决方案 考虑以下数据库表 CREATE TABLE Contact Contact
  • 函数将十六进制字符串转换为 BitArray C#

    我创建了以下函数 它将按要求执行 将十六进制字符串转换为 BitArray 我不确定该函数的效率 但我现在的主要问题是转换为Int64函数是特定字节序 当将其移植到替代芯片组时 我们将得到不同的结果 或例外 那么有人能想到另一种方法来进行这
  • 如何使用 Wi-Fi 获取距离

    我想使用 wi fi 查找距离并在 iPhone 的地图上绘制标记 那么我能得到什么想法或代码吗 第一次阅读您的问题时 我假设您指的是到接入点的距离 在写了一堆关于这个的内容之后 我意识到你可能有别的意思 如果这就是您的意思 请继续阅读 鉴
  • Facebook如何重写浏览器地址栏中页面的源URL?

    Go to http www facebook com facebook v wall 然后单击信息选项卡 内容将被加载 地址栏现在变成http www facebook com facebook v info但网页没有重新加载 起初我以为
  • 在 Nuxt 中使用最新的 SASS 和 @use

    我想在我的项目中使用 sass 我安装了 node sass 和 sass loader 我可以使用导入 变量和其他 sass 的未来 但我不能使用 use 来使用 mixin 或 function dependencies babel c
  • 如何在python中使用networkx绘制有向图?

    我有一些来自脚本的节点 我想将它们映射到图表上 在下面 我想使用箭头从 A 到 D 并且可能也将边缘着色 红色或其他颜色 这基本上就像所有其他节点都存在时从 A 到 D 的路径一样 您可以将每个节点想象为城市 从 A 到 D 需要方向 带有
  • Laravel - 如何更新整个集合

    我正在尝试用 laravel 制作一个通知系统 我的想法是获取数据并立即更新 is delivered 标志 这是代码 Model public function scopeGetForView query query gt orderBy
  • 关于数组中缺少元素的问题

    我在麻省理工大学的 算法介绍第二版 一书中遇到以下问题 问题如下 数组 A 1 n 包含 0 到 n 之间除 1 之外的所有整数 这很容易 使用辅助数组 B 0 来在 O n 时间内确定丢失的整数 记录 A 中出现了哪些数字 但是 在这个问
  • 如何使用 django 删除图像?

    我想知道如何在表单中添加删除按钮来删除图像 该项目是一个简单的 图片查看器 索引显示存储的所有图像 但我想添加一个 x 图标来删除该特定图像 这是我的代码 views py from django shortcuts import rend