Django静态媒体不显示图片

2024-03-08

在寻找解决方案几个小时后未能解决我的问题后,我发布了此内容。我的媒体根目录中的图像没有显示在我的 html 上。在 chrome 的控制台中我得到一个404 file not found.尽管图像就在那里。我在 Pycharm 中使用 Python 3 和 Django 1.10。

这是model这是我将图像上传到的位置:

from django.db import models

class Post(models.Model):
    username = "anonymous"
    post = models.ImageField(upload_to='anon')
    creation_date = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return Post.username

views.py:

from django.shortcuts import render,get_object_or_404
from .models import Post

def home(request):
    return render(request,"base.html",{})

def post_detail(request,id=None):
    instance = get_object_or_404(Post,id=id)
    context = {
        "post": instance.post,
        "instance": instance
    }
    return render(request,"post_detail.html",context)

post_detail.html(此处图像未显示):

<body>
    <img src = "{{ instance.post.url}}" height="520" width="500"><br>
    {{ instance.creation_date }}<br>
    {{ instance.username }}<br>
</body>

部分设置.py:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'Post',
]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

ROOT_URLCONF = 'Post.urls'

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')]
        ,
        'APP_DIRS': True,
        'OPTIONS': {
            'debug': DEBUG,
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',

            ],
        },
    },
]

WSGI_APPLICATION = 'Post.wsgi.application'


# Database
# https://docs.djangoproject.com/en/1.10/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

USE_I18N = True

USE_L10N = True

USE_TZ = True


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.10/howto/static-files/

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'Post/media/')

我的目录是什么样的:


混淆静态和媒体设置是一个常见的错误。在您的情况下,您实际处理的是用户上传的媒体而不是静态。

 <img src = "{{ instance.post.url}}" height="520" width="500"><br>

最相关的设置是此处描述的 MEDIA_* 设置https://docs.djangoproject.com/en/1.10/howto/static-files/ https://docs.djangoproject.com/en/1.10/howto/static-files/

但更重要的是,在您的开发服务器中,您需要通过添加来启用媒体传送

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django静态媒体不显示图片 的相关文章

随机推荐

  • .ico 的理想大小

    位于窗口顶角的 ico 文件的理想大小是多少 简短回答 16 x 16 像素 长答案 ico 文件实际上可以包含多种颜色深度的多个图像 您可以在单个文件中提供 16x16 32x32 48x48 和 64x64 操作系统将选择最好的一个进行
  • 使用sql查询将字符串转换为int

    如何在 SQL Server 2005 上使用 SQL 查询将字符串转换为整数 你可以使用投射或转换 http msdn microsoft com en us library ms187928 SQL 90 aspx SELECT CAS
  • 将数据属性传递给模态引导程序

    a class my link href modal link a 我有这个链接来打开引导模式 但我需要传递数据属性 data val 我尝试使用 javascript 但没有得到它 你能帮我么 您可以收听show bs modal模式上的
  • 如何在 Asp.Net MVC 中使用属性路由为操作生成 URL

    public class HomeController Controller Route Users about Route Users WhoareWe Route Users OurTeam Route Users aboutCompa
  • Java Fx 将场景大小调整为舞台

    我进行了搜索 但找不到任何与我在 Fx 中遇到的问题相近的内容 我正在使用 Java Fx JDK 8 并且在调整场景大小时遇到 问题 下面的代码在场景图中一次仅加载一个屏幕 并在屏幕之间切换 问题是当我调整舞台大小时 场景没有随舞台调整大
  • Nexus S 上的 OpenGL ES 黑色纹理

    在 Nexus One 上运行的 OpenGL 代码在 Nexus S 上无法正常运行 纹理似乎没有渲染 纹理应该在的地方只剩下黑色 有人有什么想法吗 The 此处给出的已接受答案 https stackoverflow com quest
  • 第二次绑定源时Datagridview完全隐藏

    private void populateListingGrid try Dictionary
  • Kafka Streams 应用程序无尽的重新平衡

    我们正在运行一个卡夫卡流应用程序并遇到一个奇怪的问题 我们正在使用全局状态存储和多个其他状态存储 我们的应用程序已加载所有数据 状态存储中现在有大量信息 现在 当我们尝试关闭应用程序并再次将其恢复 一些配置更改 时 它会进入无休止的重新平衡
  • Matlab 从命名管道(fifo)读取

    我在 Linux 下的 matlab 中读取命名管道 fifo 时遇到问题 管道上的 textread 始终返回 空矩阵 0 1 textread 会阻塞 直到数据写入管道 如果我使用 fopen 和 fscanf 那么 fopen 将阻塞
  • Bootstrap 3列类干扰jquery-ui droppable div

    我使用 jQuery UI v1 11 2 来创建一些可拖动和可放置的 div 以及 Boostrap 3 1 1 我想知道为什么 Bootstrap 列类会干扰可拖动的 提示 换句话说 当我将图像从图库 div 拖到仪表板 div 时 仪
  • httpRuntime shutdownTimeout 和 IIS 设置

    我在 ASP Net 中遇到了一个问题 在任何 Web 应用程序配置 Web config 文件中 都有一个名为 httpRuntime 的部分 它有一个属性 shutdownTimeout 根据 MSDN 文档 该属性指定在 ASP Ne
  • 检测 Swing 中单击生成的 MouseEvent 上的 Shift 修饰符

    我正在使用 Java Swing 处理 GUI 应用程序中的一些 MouseEvent 从现在开始我正在分析 mousePressed 方法中的鼠标事件 只是为了确定是否 发生左键或右键单击 我的代码是 public void mouseP
  • React,未捕获的引用错误:ReactDOM 未定义

    我在做这个路由器教程 http www tutorialspoint com reactjs reactjs router htm 我的 App jsx 文件 import React from react import ReactDOM
  • int 和 char 数组有什么区别?

    下面 int 和 char 数组有什么区别 int main int numbers 2 1 3 char letter a b 0 cout lt lt numbers lt
  • C语言中的大整数?

    在 C 中处理大量数字的最简单方法是什么 我需要在区域中存储值1000 900 或者以更人类可读的形式10 2700 有谁知道一个简单的方法来做到这一点 任何帮助将不胜感激 Use libgmp http gmplib org GMP 是一
  • 从 ADO.NET 执行 T-Sql 视图

    是否可以从 C 代码执行视图 如果是的话我想知道参数化视图是否存在以及我应该如何使用它们 参数化意味着我们在存储过程中使用相同的参数来声明 where 条件 不执行视图 一个执行查询 如果查询从视图或表中选择行 ADO NET 不知道也不关
  • Ruby on Rails / Paperclip / AWS::S3::NoSuchBucket 错误

    我安装了回形针插件并能够在本地使用它 当我将其配置为与 amazon S3 一起使用时 我不断收到 NoSuchBucket 指定的存储桶不存在 错误 回形针文档指出 如果存储桶不存在 则会创建该存储桶 但很明显 我的情况出了问题 我首先安
  • Mysql中如何将数据合并到临时表中

    我有一张非常大的桌子 叫做paypal ipn orders 在这个表中 我有 2 个重要的信息 一行称为item name和一行称为sort num 我想使用某些参数从中提取记录paypal ipn orders并将它们放入一个名为的临时
  • MS Access SQL 中是否有与 SUBSTRING 函数等效的函数?

    我想在 MS Access 查询中执行类似的操作 但 SUBSTRING 是一个未定义的函数 SELECT DISTINCT SUBSTRING LastName 1 1 FROM Authors 您可以使用 VBA 字符串函数 正如 on
  • Django静态媒体不显示图片

    在寻找解决方案几个小时后未能解决我的问题后 我发布了此内容 我的媒体根目录中的图像没有显示在我的 html 上 在 chrome 的控制台中我得到一个404 file not found 尽管图像就在那里 我在 Pycharm 中使用 Py