Python3之外部文件调用Django程序操作model等文件实现方式


Posted in Python onApril 07, 2020

我就废话不多说啦,还是直接看代码吧!

import os
import sys
import django
sys.path.append(r'C:\Users\Administrator\PycharmProjects\your projectname')

os.chdir(r'C:\Users\Administrator\PycharmProjects\your projectname')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "your projectname.settings")
django.setup()
from crm import models
v = models.Customer.objects.all()
print(v)

补充知识:Django媒体文件的调用和配置

这类文件可由用户或管理员上传,因此可能会变化。比如说,用户的头像就是媒体文件,电商网站中的商品图片也是媒体文件。

【settings.py文件】

①加入变量:MEDIA_DIR (主要用于获取路径)

import os
 
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATE_DIR = os.path.join(BASE_DIR,'templates')
STATIC_DIR = os.path.join(BASE_DIR,'static')
MEDIA_DIR = os.path.join(BASE_DIR,'media') # 需要加入的MEDIA_DIR路径变量

②加入变量:MEDIA_ROOT(主要用于告诉服务器去哪里找媒体文件)

STATICFILES_DIRS = [STATIC_DIR,]
MEDIA_ROOT = MEDIA_DIR    # 加入的变量MEDIA_ROOT

③加入变量:MEDIA_URL (主要用于客户端可通过URL直接访问)

STATIC_URL = '/static/'
MEDIA_URL = '/media/' # 此次加入的变量MEDIA_URL

④我们想在模板中引用到 MEDIA_ROOT 的路径,我们就需要在settings.py文件中

新加入:django.template.context_processors.media

TEMPLATES = [
 {
  'BACKEND': 'django.template.backends.django.DjangoTemplates',
  'DIRS': [TEMPLATE_DIR,],
  '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', # 新加入的
   ],
  },
 },
]

并且在项目的urls.py文件中url映射列表后面加入 static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include
from django.conf import settings    # 新加入
from django.conf.urls.static import static # 新加入
 
from rango import views
 
urlpatterns = [
 url(r'^admin/', admin.site.urls),
 url(r'^$',views.index, name='index'),
 url(r'^rango/',include('rango.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) # 新加入

做完以上步骤我们就可以通过url直接访问媒体文件资源了。

我们在模板中则通过 <img src="{{ MEDIA_URL}}cat.jpg" /> 来进行调用这个媒体文件。

以上这篇Python3之外部文件调用Django程序操作model等文件实现方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python高效编程技巧
Jan 07 Python
python @property的用法及含义全面解析
Feb 01 Python
Django实现登录随机验证码的示例代码
Jun 20 Python
python实现雨滴下落到地面效果
Jun 21 Python
Python之用户输入的实例
Jun 22 Python
Python输出\u编码将其转换成中文的实例
Dec 15 Python
python实现Flappy Bird源码
Dec 24 Python
Python字典的核心底层原理讲解
Jan 24 Python
python字符串替换re.sub()实例解析
Feb 09 Python
Idea安装python显示无SDK问题解决方案
Aug 12 Python
python3爬虫GIL修改多线程实例讲解
Nov 24 Python
python Scrapy爬虫框架的使用
Jan 21 Python
解决django的template中如果无法引用MEDIA_URL问题
Apr 07 #Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
Apr 07 #Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 #Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
Apr 07 #Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
Apr 07 #Python
Pytest框架之fixture的详细使用教程
Apr 07 #Python
4行Python代码生成图像验证码(2种)
Apr 07 #Python
You might like
自己前几天写的无限分类类
2007/02/14 PHP
php中jpgraph类库的使用介绍
2013/08/08 PHP
基于jquery可配置循环左右滚动例子
2011/09/09 Javascript
Fixie.js 自动填充内容的插件
2012/06/28 Javascript
Javascript操作URL函数修改版
2013/11/07 Javascript
js 跳出页面的frameset框架示例介绍
2013/12/23 Javascript
PHP结合jQuery实现的评论顶、踩功能
2015/07/22 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
javascript图片滑动效果实现
2021/01/28 Javascript
Javascript使用function创建类的两种方法(推荐)
2016/11/19 Javascript
微信小程序 动态绑定数据及动态事件处理
2017/03/14 Javascript
JavaScript实现QQ聊天消息展示和评论提交功能
2017/05/22 Javascript
js闭包学习心得总结
2018/04/17 Javascript
Bootstrap 模态框自定义点击和关闭事件详解
2018/08/10 Javascript
基于three.js实现的3D粒子动效实例代码
2019/04/09 Javascript
Vue 理解之白话 getter/setter详解
2019/04/16 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
Js利用正则表达式去除字符串的中括号
2020/11/23 Javascript
[00:32]2018DOTA2亚洲邀请赛OpTic出场
2018/04/03 DOTA
Python语言技巧之三元运算符使用介绍
2013/03/04 Python
深入探究Python中变量的拷贝和作用域问题
2015/05/05 Python
Python学习小技巧之列表项的排序
2017/05/20 Python
python实现大学人员管理系统
2019/10/25 Python
关于Python中定制类的比较运算实例
2019/12/19 Python
Python3运算符常见用法分析
2020/02/14 Python
python数据预处理 :样本分布不均的解决(过采样和欠采样)
2020/02/29 Python
Python任务自动化工具tox使用教程
2020/03/17 Python
目前不被任何主流浏览器支持的CSS3属性汇总
2014/07/21 HTML / CSS
Tessabit美国:集世界奢侈品和设计师品牌的意大利精品买手店
2020/06/29 全球购物
优秀毕业自我鉴定
2014/02/15 职场文书
开展批评与自我批评发言材料
2014/05/15 职场文书
节能减耗标语
2014/06/21 职场文书
水利局群众路线专题民主生活会发言材料
2014/09/21 职场文书
教师学习心得体会范文
2016/01/21 职场文书
大学生创业计划书
2019/06/24 职场文书
如何制作自己的原生JavaScript路由
2021/05/05 Javascript