博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
model中的一些处理
阅读量:6212 次
发布时间:2019-06-21

本文共 2951 字,大约阅读时间需要 9 分钟。

1、setting.py中设置

主要有三个地方需要设置:

MEDIA_URL = ‘/media/’,设置该路径为了在模板中定位图片的位置,<img src="{

{ MEDIA_URL }}{
{ user.image }}"/> 这样便可以从浏览器中得到头像的url地址,从而显示出来

MEDIA_ROOT = os.path.join(BASE_DIR, ‘media’) , 设置该路径是为了将新建的‘media’添加到根搜索路径下,这样在建立用户模型时的image = models.ImageField(max_length=100, upload_to='users/image/%Y/%m', , upload_to 指定的是相对闻之,通过设定MEDIA_ROOT,便可以将头像存储在:127.0.0.1:8000/meida/user/image/%Y/%m,目录下了。

的上下文管理器,添加media进来,如果不添加的话,模板中的{

{ MEDIA_URL }}会找不到地址的。

设置TEMPLATES中

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

  

2、配置url

因为浏览器中显示图片,会从如下地址中寻找:127.0.0.1:8000/meida/user/image/%Y/%m , 如果不配置media的url地址的话,该图片是无法被找到的。配置方法如下:

from django.conf.urls import urlfrom django.views.static import servefrom mxonline3.settings import MEDIA_ROOTurlpatterns = [    #配置上传文件的访问处理函数    url(r'^media/(?P
.*)$', serve, {'document_root': MEDIA_ROOT}),]

 djangoueditor配置

1、将djangoueditor添加到setting.py中

INSTALLED_APPS = [    ...    'DjangoUeditor',]

2、添加url

将URL添加到urlpatterns中去:

#富文本编辑器    url(r'^ueditor/',include('DjangoUeditor.urls' )),

3、修改model

将模型中需要改为富文本添加的字段,一般为TextField,改为如下:

detail = UEditorField(verbose_name='课程详情',width=600, height=300, toolbars="full", imagePath="course/ueditor/", filePath="course/ueditor/", upload_settings={"imageMaxSize":1204000},default='')

settings中关于static静态文件目录的设置

django项目settings中关于静态资源存放位置的设置

主要涉及以下3项:STATIC_URL、STATICFILES_DIR和STATIC_ROOT

1、STATIC_URL

这项是必须配置的,而且属性值不能为空。默认值是STATIC_URL = '/static/'。

如果STATICFILES_DIR没有设置,则只能识别app中static文件夹下的静态资源。即:只能通过https://127.0.0.1:8000/static/1.jpg访问,且static文件夹是放在app中的。 app中静态文件夹名称必须是static,即STATIC_URL属性的值。如果写其他名称,则不能访问。 STATIC_URL的值,表示访问静态资源的起始url,如:https://127.0.0.1:8000/static/...... 如果直接把static文件夹放在项目根目录下,通过上面的网址是不能访问的,除非设置STATICFILES_DIR。

2、STATICFILES_DIR

如果想在项目的根目录下存放静态资源,则需要设置STATICFILES_DIRS属性。该属性的值是列表或元组格式,每个列表(元组)元素代表一个静态资源文件夹,这些文件夹可以自行命名,不必非得是static。

如:在项目根目录下建立文件夹public_static,里面放置图片1.jpg,在app(index)中建立文件夹index_static,里面放置2.jpg,都用于存放静态文件。 则配置:STATICFILES_DIRS = [os.path.join(BASE_DIR, 'public_static'),os.path.join(BASE_DIR, 'index/index_static'),] 访问静态文件的路径是:https://127.0.0.1:8000/static/1.jpg;https://127.0.0.1:8000/static/2.jpg.

综上可见,访问静态资源的路径(起始路径)由STATIC_URL的属性值决定,如果静态文件夹中还有别的文件夹(如test),访问时的路径则是https://127.0.0.1:8000/static/test/1.jpg

3、STATIC_ROOT

它的作用主要是收集整个项目的静态资源,并存放在一个新的文件夹,然后由该文件夹与服务器之间构建映射关系。

STATIC_ROOT配置如下:STATIC_ROOT = os.path.join(BASE_DIR, 'all_static')

转载于:https://www.cnblogs.com/shangjunnihao/p/10675549.html

你可能感兴趣的文章
功能测试的国别差异(日本与欧美)
查看>>
我的友情链接
查看>>
ToRPC:一个双向RPC的Python实现
查看>>
Ubuntu 14 Open Ldap Add Root
查看>>
Vim脚本 - 竖线'|' 和反斜线'\'
查看>>
netty框架的学习笔记 + 一个netty实现websocket通信案例
查看>>
我的友情链接
查看>>
centos下yum安装ffmpeg
查看>>
磁盘超过2T无法用fdisk分区的问题
查看>>
我的友情链接
查看>>
MySQL三大范式
查看>>
nginx在reload时候报错invalid PID number
查看>>
asp 源码建站
查看>>
ntpdate 的问题
查看>>
rss订阅开发
查看>>
SQL中的cast()函数介绍
查看>>
JavaScript—内置对象
查看>>
神经网络和深度学习-第二周神经网络基础-第二节:Logistic回归
查看>>
Myeclipse代码提示及如何设置自动提示
查看>>
FTP
查看>>