Django1.10 上传图片?TEMPLATES、STATICFILES_DIRS、THUMBNAIL_PROCESSORS等相关配置
来源:互联网 发布:profili软件介绍 编辑:程序博客网 时间:2024/06/06 01:16
在了解如何上传图片之前,我们很有必要理解一项基本配置。
my_blog=os.path.dirname(os.path.dirname(__file__))'''本来想my_blog重命名为BASE_DIR,但系统报错`ImportError: No module named 'BASE_DIR'`,错误很新鲜,一直没有调过来。my_blog 也好BASE_DIR也好,不影响我们的理解。'''
os.path.dirname()
函数是什么?相应的os.path.join()
,os.path.abspath()
又是什么鬼?
# os.path.abspath()返回的是文件的绝对路径import osdef print_path(p): print('Settings.py路径:',os.path.abspath(p))if __name__=='__main__': print('当前路径',os.getcwd()) print_path('settings.py') ''' 当前路径 E:\My_Blog-master\my_blog Settings.py路径: E:\My_Blog-master\my_blog\settings.py '''
# os.path.dirname()返回文件的文件夹。import osdef print_path(p): print('Settings.py路径:',os.path.dirname(__file__))if __name__=='__main__': print('当前路径',os.getcwd()) print_path('settings.py') ''' 当前路径 E:\My_Blog-master\my_blog Settings.py路径: E:/My_Blog-master/my_blog #url的形式 '''
第二段代码也可以这么写:结果是一样一样的!
# 结果是一样的,如果忽略符号差异`\`和`/`的话import osdef print_path(p): print('Settings.py路径:',os.path.dirname(os.path.abspath(p)))if __name__=='__main__': print('当前路径',os.getcwd()) print_path('settings.py') ''' 当前路径 E:\My_Blog-master\my_blog Settings.py路径: E:\My_Blog-master\my_blog '''
os.path.join()的作用?(针对os.path.dirname(os.path.abspath(p))和os.path.dirname(_file_)分别给出结果)
'''前提:os.path.dirname(os.path.abspath(p))链接前:E:\My_Blog-master\my_blog链接后:连接后的地址是 E:\My_Blog-master\my_blog\test'''def print_join_path(p): print('连接后的地址是',os.path.join('E:\My_Blog-master\my_blog',p))if __name__=='__main__': print_join_path('test')
'''前提:os.path.dirname(__file__)链接前:E:/My_Blog-master/my_blog链接后:E:/My_Blog-master/my_blog\test'''def print_join_path(p): print('连接后的地址是',os.path.join(' E:/My_Blog-master/my_blog',p))if __name__=='__main__': print_join_path('test')
从以上链接的结果看,
my_blog=os.path.dirname(os.path.dirname(__file__))os.path.join(my_blog, 'db.sqlite3')
最终的结果是:E:/My_Blog-master/my_blog\db.sqlite3。
至于这么奇怪的路径,居然还能用,就不继续深究了(把时间花在刀刃上)。
结论:adspath返回的是绝对路径,dirname返回的是url路径,也就是满足django开发需要的路径。所以,一般都用dirname(_file_)
结论:adspath返回的是绝对路径,dirname返回的是url路径,也就是满足django开发需要的路径。所以,一般都用dirname(_file_)
结论:adspath返回的是绝对路径,dirname返回的是url路径,也就是满足django开发需要的路径。所以,一般都用dirname(_file_)
一句话总结一下,url格式的路径才有用!下一篇接着这个继续写。。。
阅读全文
0 0
- Django1.10 上传图片?TEMPLATES、STATICFILES_DIRS、THUMBNAIL_PROCESSORS等相关配置
- 10.23 django1.10, TEMPLATES设置
- spring mvc 图片上传,图片压缩、跨域解决、 按天生成目录 ,删除,限制为图片代码等相关配置
- spring mvc 图片上传,图片压缩、跨域解决、 按天生成目录 ,删除,限制为图片代码等相关配置
- django1.10 静态文件配置
- Django1.4上传图片无法在页面显示的问题
- Python3.5 Django1.9.3 图片上传与返回
- Django1.9 加载通过ImageField上传的图片
- 关于ueditor的配置、图片上传、保存数据库、显示等
- FCKEditor配置及图片上传相关问题解决方案 .
- CKeditor4.7.3标准版图片上传及相关配置
- 上传图片验证相关
- 图片上传相关
- 上传图片,上传语音,上传视频等
- 上传 图片 等比例压缩
- Android 上传图片文件等
- 上传等比例压缩图片
- 踩坑:图片拍照上传等
- 注意力机制(Attention Mechanism)在自然语言处理中的应用
- 采用ajax提交POST数据的例子
- 每日学习心得:$.extend()方法和(function($){...})(jQuery)详解
- 1051. 复数乘法 (15)
- OpenMP中几个容易混淆的函数
- Django1.10 上传图片?TEMPLATES、STATICFILES_DIRS、THUMBNAIL_PROCESSORS等相关配置
- 【VIM】vim Python工作环境配置
- 条件查询问题
- Android-控件WebView的基本使用
- 【leedcode】 Add to List 617. Merge Two Binary Trees
- Maven详解 一.前言 以前做过的项目中,没有真正的使用过Maven,只知道其名声很大,其作用是用来管理jar 包的。最近一段时间在项目过程中使用Maven,用Maven构建的web项目
- jQuery poshytip 插件的简单实用方法
- 04-UI: 屏幕适配简介
- spring mvc 中文乱码