我已经完成了我在Django的第一个应用程序并且工作得很好,但是因为我设置了DEGUG = False,所以仍然有预部署问题…

这只是在模板中显示图像… T_T

我正在使用它,但现在当我使用whitenoise为我的图像提供服务时它无法工作……并且它返回错误请求(400)错误…

Models.py

class GalleryItem(models.Model):

thumbnail = models.ImageField(blank=True,upload_to='gallery/thumb')

img_wide = models.ImageField(blank=True,upload_to='gallery')

template.py

{% load staticfiles %}

{% for img in img_to_display %}

{% endfor %}

urls.py

from django.conf.urls import url, include

from django.contrib import admin

from django.conf import settings

import os

from django.conf import settings

from django.conf.urls.static import static

urlpatterns = [

url(r'^gallery/', include('gallery.urls')),

url(r'^shop/', include('shop.urls')),

url(r'^events/', include('events.urls')),

url(r'^page/', include('paginator.urls')),

url(r'^news/', include('blog.urls')),

url(r'^ckeditor/', include('ckeditor_uploader.urls')),

url(r'^admin/', admin.site.urls),

] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

settings.py

import os

import dj_database_url

BASE_DIR = os.path.dirname(os.path.dirname(__file__))

print("BASE_DIR = ",BASE_DIR)

MEDIA_ROOT = os.path.join(BASE_DIR, 'wt/static/media/')

MEDIA_URL = '/media/'

SECRET_KEY = 'SECRET_KEY'

DEBUG = False

INSTALLED_APPS = [

'ckeditor',

'ckeditor_uploader',

'team.apps.TeamConfig',

'gallery.apps.GalleryConfig',

'shop.apps.ShopConfig',

'events.apps.EventsConfig',

'blog.apps.BlogConfig',

'paginator.apps.paginatorConfig',

'django.contrib.admin',

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.messages',

'django.contrib.staticfiles',

]

MIDDLEWARE_CLASSES = [

'django.middleware.security.SecurityMiddleware',

'django.contrib.sessions.middleware.SessionMiddleware',

'django.middleware.common.CommonMiddleware',

'django.middleware.csrf.CsrfViewMiddleware',

'django.contrib.auth.middleware.AuthenticationMiddleware',

'django.contrib.auth.middleware.SessionAuthenticationMiddleware',

'django.contrib.messages.middleware.MessageMiddleware',

'whitenoise.middleware.WhiteNoiseMiddleware',

]

ROOT_URLCONF = 'wt.urls'

TEMPLATES = [

{

'BACKEND': 'django.template.backends.django.DjangoTemplates',

'DIRS': [os.path.join(BASE_DIR, 'templates')],

'APP_DIRS': True,

'OPTIONS': {

'context_processors': [

"django.contrib.auth.context_processors.auth",

"django.core.context_processors.request",

"django.core.context_processors.debug",

"django.core.context_processors.i18n",

"django.core.context_processors.media",

"django.core.context_processors.static",

"django.core.context_processors.tz",

"django.contrib.messages.context_processors.messages",

],

},

},

]

WSGI_APPLICATION = 'wt.wsgi.application'

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.postgresql',

'NAME': 'wt_db',

'USER': 'postgres',

'PASSWORD': 'PASSWORD',

'HOST': '127.0.0.1',

'PORT': '5432',

}

}

AUTH_PASSWORD_VALIDATORS = [

{

'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',

},

{

'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',

},

]

LANGUAGE_CODE = 'fr-fr'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True

db_from_env = dj_database_url.config(conn_max_age=500)

DATABASES['default'].update(db_from_env)

ALLOWED_HOSTS = ['localhost', '127.0.0.1',]

STATIC_ROOT = os.path.join(BASE_DIR, 'wt/staticfiles')

STATIC_URL = '/static/'

STATICFILES_DIRS = [

os.path.join(BASE_DIR, 'wt/static'),

os.path.join(BASE_DIR, 'wt/staticfiles'),

]

STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'

CKEDITOR_UPLOAD_PATH = 'uploads'

CKEDITOR_IMAGE_BACKEND = 'pillow'

CKEDITOR_BROWSE_SHOW_DIRS = True

这是我的错误日志:

The joined path (E:\media\gallery\thumb\lost-thumb.jpg) is located outside of the base path component (E:\dev\wt\wt\wt\staticfiles)

[15/May/2016 20:01:41] "GET /page/gallery HTTP/1.1" 400 26

非常感谢您的帮助!

python替换img的路径为新的路径_python – Django |连接路径位于基本路径组件之外{%static img.thumbnail.url%},错误400与whitenoise...相关推荐

  1. 计算机python考试真题及答案新课标_Python考试(有答案)

    一.填空题 1.Python 程序文件的扩展名是() A..python B..pyt C..pt D..P.y. 2. 下述标识符中 , ()不是 Python 语言的保留字 . A.false B ...

  2. python替换文件中的字符串_Python文件操作中进行字符串替换的方法(保存到新文件/当前文件)...

    题目: 1.首先将文件:/etc/selinux/config 进行备份 文件名为 /etc/selinux/config.bak 2.再文件:/etc/selinux/config 中的enforc ...

  3. python标准库模块路径_Python3的系统标准库pathlib模块的 Path 对路径的操作会更简单...

    而到了Python3时代后,Python3的系统标准库pathlib模块的 Path 对路径的操作会更简单.甚至可以说pathlib已经可以完全替代os.path,它完全采用面向对象的编程方式,因为P ...

  4. Python 3.10版本及其依赖项 Linux下源码编译 安装到指定路径/目录

    Python 3.10版本及其依赖项 Linux下源码编译 安装到指定路径/目录 安装需求 准备工作 Python及其依赖项 libffi glibc GDBM mpdecimal bz2 xz re ...

  5. python 替换word内容 doc转换成docx

    python 替换word内容 doc转换成docx doc转换成docx 北京市,天津市,上海市,重庆市,河北省,山西省,辽宁省,吉林省,黑龙江省,江苏省,浙江省,安徽省,福建省,江西省,山东省,河 ...

  6. python的哪个模块提供了文件处理方法_Python处理文件路径有哪些方法?

    在python中找寻路径的方法有很多,当然也有新方法在不断地更新中.对于新手的python小白来说,肯定是越简单越好用的最受欢迎.小编经过一番找寻,为大家带来两种方法,大家可以根据接受情况选择. 老方 ...

  7. python 获取向上两级路径_Python学习第171课--相对路径和绝对路径

    [每天几分钟,从零入门python编程的世界!] 这节我们补充2个概念:相对路径和绝对路径. ●绝对路径 就像一棵大树一样,从它的根开始,往上会有大的枝干,在大的枝干上面又会有小一点的树枝,小树枝上面 ...

  8. python替换UTF-8编码文本中任意特殊字符,包括中文符号问题:大量文本,将其中的特殊字符用空

    python替换UTF-8编码文本中任意特殊字符,包括中文符号问题:大量文本,将其中的特殊字符用空 python替换UTF-8编码文本中任意特殊字符,包括中文符号 问题: 大量文本,将其中的特殊字符用 ...

  9. idea中git替换,推送到新的github或者gitlab上面

    借鉴 目录 git使用,命令行 初始化本地仓库,并提交内容到本地 连接到远程仓库,并将代码同步到远程仓库 继续修改本地代码,然后提交并推送到github idea中git使用合并分支 修改项目的git ...

最新文章

  1. yii2 后台权限验证获取用户身份_Yii2搭建后台并实现rbac权限控制完整实例教程...
  2. jquery等待特定元素加载再执行相关函数
  3. WSAGetLastError:10004 一个封锁操作被对 WSACancelBlockingCall的调用中断 的解决
  4. 开发商微信选房后不退认筹金_网曝!青岛恒大文化旅游城1400余名购房者欲退认筹金,开发商表示.........
  5. 使用webpack4搭建一个基于Vue的组件库
  6. win10 安装docker
  7. 2010年最新网络推广方式总结
  8. LeetCode-50:关于浮点型数字求高次幂的高效运算
  9. 赢在电子商务网站制作与营销:B2C版
  10. 学号 20165329 《Java程序设计》第4周学习总结
  11. Linux命令行大小写转换
  12. 数据库查询优化-添加索引
  13. matlab fftshift
  14. ubuntu运行迅雷极速版
  15. tolua++ 参考手册
  16. Android 白天黑夜模式切换换肤
  17. 给开发兄弟上难度,一周内上线likeadmin的官网
  18. 如何将前端echats 图表插入到execl 中
  19. 【量化笔记】Markowitz均值-方差模型
  20. android禁止屏幕自动旋转_如何禁止屏幕翻转

热门文章

  1. xmind试用模式会过期吗_汽车可以一直用s档吗?运动模式到底会不会伤车?
  2. swager java_Swagger介绍及使用
  3. linux oracle pam,Linux技术之深入Linux PAM 体系结构(一)
  4. 解析ip数据包java_ip包,ip数据包,数据包或者包的理解
  5. jQuery实际案例③——手风琴的效果
  6. 全面挖掘Java Excel API 使用方法
  7. ref 和out的区别
  8. Balder 3D开发系列之--给自定义基本体进行贴图操作
  9. ffmpeg 推流 在H264中插入SPS、PPS 头
  10. 【Linux】监视gpu使用情况