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之从if开始语句的征程
Sep 14 Python
Python中super()函数简介及用法分享
Jul 11 Python
Python+Socket实现基于UDP协议的局域网广播功能示例
Aug 31 Python
python中学习K-Means和图片压缩
Nov 20 Python
Django实现全文检索的方法(支持中文)
May 14 Python
Python3爬虫爬取英雄联盟高清桌面壁纸功能示例【基于Scrapy框架】
Dec 05 Python
Python3.5运算符操作实例详解
Apr 25 Python
Python3远程监控程序的实现方法
Jul 15 Python
ubuntu 18.04 安装opencv3.4.5的教程(图解)
Nov 04 Python
Python sqlite3查询操作过程解析
Feb 20 Python
python如何保存文本文件
Jun 07 Python
学会Python数据可视化必须尝试这7个库
Jun 16 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
利用PHP实现与ASP Banner组件相似的类
2006/10/09 PHP
在PHP中执行系统外部命令
2006/10/09 PHP
PHP安全之register_globals的on和off的区别
2020/07/23 PHP
将CKfinder整合进CKEditor3.0的新方法
2010/01/10 Javascript
JS获取页面窗口大小的代码解读
2011/12/01 Javascript
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
2014/03/18 NodeJs
浅谈JavaScript正则表达式分组匹配
2015/04/10 Javascript
JavaScript基于replace+正则实现ES6的字符串模版功能
2017/04/25 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
基于jquery实现九宫格拼图小游戏
2018/11/30 jQuery
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
vue 使用外部JS与调用原生API操作示例
2019/12/02 Javascript
微信小程序抽奖组件的使用步骤
2021/01/11 Javascript
python将unicode转为str的方法
2017/06/21 Python
pip matplotlib报错equired packages can not be built解决
2018/01/06 Python
python pandas修改列属性的方法详解
2018/06/09 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
2018/10/15 Python
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
Python计算机视觉里的IOU计算实例
2020/01/17 Python
Python @property及getter setter原理详解
2020/03/31 Python
HTML5使用drawImage()方法绘制图像
2014/06/23 HTML / CSS
canvas裁剪clip()函数的具体使用
2018/03/01 HTML / CSS
喜诗官方在线巧克力店:See’s Candies
2017/01/01 全球购物
哄娃神器4moms商店:美国婴童用品品牌
2019/03/07 全球购物
为什么在使用动态 SQL 语句时必须为低层数据库对象授予权限
2012/12/13 面试题
SQL Server数据库笔试题和答案
2016/02/04 面试题
儿科护士自我鉴定
2013/10/14 职场文书
旅游管理毕业生自荐信
2013/11/05 职场文书
护士在校生自荐信
2014/02/01 职场文书
《生命 生命》教学反思
2014/04/19 职场文书
敲诈同学钱财检讨书范文
2014/11/18 职场文书
2014年家长学校工作总结
2014/11/20 职场文书
泰山导游词
2015/02/02 职场文书
使用Python开发贪吃蛇游戏 SnakeGame
2022/04/30 Python