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 url
from django.views.static import serve from mxonline3.settings import MEDIA_ROOT urlpatterns = [ #配置上传文件的访问处理函数
url(r'^media/(?P<path>.*)$', 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')

model中的一些处理的更多相关文章

  1. tp5 model 中的查询范围(scope)

    查询范围scope在model中定义,在controller中使用 namespace app\index\model; use think\Model; class User extends Mod ...

  2. tp5 model 中的软删除

    model中需use traits\model\SoftDelete; // 数据表中需添加一个 delete_time 字段保存删除时间 namespace app\index\model; use ...

  3. 在Asp.Net MVC中实现RequiredIf标签对Model中的属性进行验证

    在Asp.Net MVC中可以用继承ValidationAttribute的方式,自定制实现RequiredIf标签对Model中的属性进行验证 具体场景为:某一属性是否允许为null的验证,要根据另 ...

  4. Django model 中meta options

    之前学了abstract,这是后续的一些options app_label: app_label的作用是:如果一个model定义不在INSTALLED_APPS中,那么此时就需要声明,这个model的 ...

  5. Django model 中meta options之 abstract

    当abstract=True时,这个model就变成了abstrct base class,那这个基类有什么特性呢? 当某一model中设置了abstract=True时,就会使该model中的字段都 ...

  6. CI中的控制器中要用model中的方法,是统一写在构造器方法中,还是在每一个方法中分别写

    Q: CI中的控制器中要用model中的方法,是统一写在构造器方法中,还是在每一个方法中分别写 A: 建议统一写,CI框架会自动识别已经加载过的类,所以不用担心重复加载的问题 class C_User ...

  7. Django文档——Model中的ForeignKey,ManyToManyField与OneToOneField

    关联关系字段 (Relationship fields) ForeignKey,ManyToManyField与OneToOneField分别在Model中定义多对一,多对多,一对一关系. 例如,一本 ...

  8. Django model中 双向关联问题,求帮助

    Django model中 双向关联问题,求帮助 - 开源中国社区 Django model中 双向关联问题,求帮助

  9. [Tips]ASP.NET MVC 发布到服务器后Model中属性相关的Attribute失效

    Asp.net MVC4 开发的项目,发布到真实环境环境后Model中的一个属性设置的了Attribute,但是这些Attribute都失效. 经过对比和坚持代码发现控制长度的Attribute使用错 ...

  10. Django的model中日期字段设置默认值的问题

    之前写过这样一个model: class MonthlyFeeMember(models.Model): worker = models.ForeignKey(Student, verbose_nam ...

随机推荐

  1. spring beans源码解读之--总结篇

    spring beans下面有如下源文件包: org.springframework.beans, 包含了操作java bean的接口和类.org.springframework.beans.anno ...

  2. [Vue] vue2.0

    vue实例 所有的 Vue 组件都是 Vue 实例,并且接受相同的选项对象 当一个 Vue 实例被创建时,它将 data 对象中的所有的属性加入到 Vue 的响应式系统中.当这些属性的值发生改变时,视 ...

  3. IntelliJ IDEA下的使用git

    1.git简介 git是目前流行的分布式版本管理系统.它拥有两套版本库,本地库和远程库,在不进行合并和删除之类的操作时这两套版本库互不影响.也因此其近乎所有的操作都是本地执行,所以在断网的情况下任然可 ...

  4. img transform:scale 放大在ios下变模糊

    /*img标签放大再缩小*/ img { width: 400%; transform: translate3d(-50%, -50%, 0) scale(0.25, 0.25); -webkit-t ...

  5. html和css的使用方法以及样式

    布局步骤 第一步: 清除默认样式第二步: 划分模块第三步: 设置模块的大小以及位置第四步: 划分下一级模块 html和css 引入网页头像 <link rel="shortcut ic ...

  6. transform 的副作用

    transform是一些效果的集合,主要是移动.旋转.缩放和倾斜这四种基本操作,还可以通过设置matrix矩阵来实现更复杂的效果. 变形transform可以实现2D和3D两种效果. 变形transf ...

  7. Android自定义控件实例,圆形头像(图库 + 裁剪+设置),上传头像显示为圆形,附源码

    Android项目开发中经常会遇见需要实现圆角或者圆形的图片功能,如果仅仅使用系统自带的ImageView控件显然无法实现此功能,所以通过系列文章的形式由简到繁全方位的介绍一下此功能的实现,巩固一下自 ...

  8. vue的组件化运用(数据在两个组件互传,小问题总结)

    一.vue的组件化应用 首先,知道有哪些相关的属性需要用到,再慢慢去理解,运用. 1.两个vue页面 2. slot占位符(可用可不用) 3.props内置属性 4.watch监听函数 5.impor ...

  9. (办公)git入门

    git版本库(分布式版本控制系统),可以记录每次文件的改动,是程序开发的好帮手. 1.创建版本库: repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文 ...

  10. 升级Mac OS X上的git

    今天一打开visual studio code就提示我git版本low,需要升级,然后提供了一个下载链接(git官方下载地址:https://git-scm.com/),然后我就根据链接去下载了mac ...