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 相关文章推荐
Python3 入门教程 简单但比较不错
Nov 29 Python
Python编程中归并排序算法的实现步骤详解
May 04 Python
Python中matplotlib中文乱码解决办法
May 12 Python
python实现机械分词之逆向最大匹配算法代码示例
Dec 13 Python
我就是这样学习Python中的列表
Jun 02 Python
详解python pandas 分组统计的方法
Jul 30 Python
python 默认参数相关知识详解
Sep 18 Python
python Qt5实现窗体跟踪鼠标移动
Dec 13 Python
使用jupyter notebook直接打开.md格式的文件
Apr 10 Python
Django 5种类型Session使用方法解析
Apr 29 Python
Python PyQt5模块实现窗口GUI界面代码实例
May 12 Python
python缺失值的解决方法总结
Jun 09 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 分页原理分析,大家可以看看
2009/12/21 PHP
php从右向左/从左向右截取字符串的实现方法
2011/11/28 PHP
新手菜鸟必读:session与cookie的区别
2013/08/22 PHP
Php header()函数语法及使用代码
2013/11/04 PHP
自制PHP框架之路由与控制器
2017/05/07 PHP
Yii 2.0在Grid中格式化时间方法示例
2017/06/06 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
关于 文本框默认值 的操作js代码
2012/01/12 Javascript
js原型链原理看图说明
2012/07/07 Javascript
JavaScript表达式:URL 协议介绍
2013/03/10 Javascript
jquery实现按Enter键触发事件示例
2013/09/10 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
JavaScript判断用户名和密码不能为空的实现代码
2016/05/16 Javascript
jQuery增加、删除及修改select option的方法
2016/08/19 Javascript
jQuery实现发送验证码并60秒倒计时功能
2016/11/25 Javascript
jquery与ajax获取特殊字符实例详解
2017/01/08 Javascript
JavaScript-定时器0~9抽奖系统详解(代码)
2017/08/16 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
[02:20]DOTA2中文配音宣传片
2013/05/22 DOTA
[01:17]辉夜杯战队访谈宣传片—EHOME
2015/12/25 DOTA
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
python之Socket网络编程详解
2016/09/29 Python
Python 实现使用dict 创建二维数据、DataFrame
2018/04/13 Python
python 求10个数的平均数实例
2019/12/16 Python
CSS3控制HTML元素动画效果
2014/02/08 HTML / CSS
html5+svg学习指南之SVG基础知识
2014/12/17 HTML / CSS
英国名牌服装购物网站:OD’s Designer
2019/09/02 全球购物
Ellos瑞典官网:北欧地区时尚、美容和住宅领域领先的电子商务网站
2019/11/21 全球购物
双立人加拿大官网:Zwilling加拿大
2020/08/10 全球购物
维德科技C#面试题笔试题
2015/12/09 面试题
会议接待欢迎词
2014/01/12 职场文书
出国留学介绍信
2014/01/13 职场文书
会计专业毕业生求职信
2014/07/04 职场文书
分析并发编程之LongAdder原理
2021/06/29 Java/Android
MySQL的索引你了解吗
2022/03/13 MySQL
Android在Sqlite3中的应用及多线程使用数据库的建议
2022/04/24 Java/Android