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程序抓取网页的HTML信息的一个小实例
May 02 Python
在Python程序中操作文件之flush()方法的使用教程
May 24 Python
Python读写txt文本文件的操作方法全解析
Jun 26 Python
Python实现PS滤镜功能之波浪特效示例
Jan 26 Python
Django使用httpresponse返回用户头像实例代码
Jan 26 Python
Sanic框架蓝图用法实例分析
Jul 17 Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
Jan 22 Python
经验丰富程序员才知道的8种高级Python技巧
Jul 27 Python
Python confluent kafka客户端配置kerberos认证流程详解
Oct 12 Python
Python实现JS解密并爬取某音漫客网站
Oct 23 Python
Numpy数组的广播机制的实现
Nov 03 Python
Python中threading库实现线程锁与释放锁
May 17 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
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
smarty内置函数section的用法
2015/01/22 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
详解php设置session(过期、失效、有效期)
2015/11/12 PHP
PHP性能优化大全(php.ini)
2016/05/20 PHP
一个简单的php MVC留言本实例代码(必看篇)
2016/09/22 PHP
THinkPHP获取客户端IP与IP地址查询的方法
2016/11/14 PHP
tp5(thinkPHP5)操作mongoDB数据库的方法
2018/01/20 PHP
PHP实现的数组和XML文件相互转换功能示例
2018/03/15 PHP
Laravel-admin之修改操作日志的方法
2019/09/30 PHP
laravel config文件配置全局变量的例子
2019/10/13 PHP
为调试JavaScript添加输出窗口的代码
2010/02/07 Javascript
Egret引擎开发指南之编译项目
2014/09/03 Javascript
js在指定位置增加节点函数insertBefore()用法实例
2015/01/12 Javascript
包含中国城市的javascript对象实例
2015/08/03 Javascript
javascript每日必学之继承
2016/02/23 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
2020/03/26 Javascript
关于原生js中bind函数的简单实现
2016/08/10 Javascript
AngularJS实现在ng-Options加上index的解决方法
2016/11/03 Javascript
jquery实现提示语淡入效果
2017/05/05 jQuery
js实现关闭网页出现是否离开提示
2017/12/07 Javascript
如何解决vue2.0下IE浏览器白屏问题
2018/09/13 Javascript
VUE中使用MUI方法
2019/02/12 Javascript
解决Python中字符串和数字拼接报错的方法
2016/10/23 Python
PyTorch的深度学习入门教程之构建神经网络
2019/06/27 Python
美国市场上最实惠的送餐服务:Dinnerly
2018/03/18 全球购物
万户网络JAVA程序员岗位招聘笔试试卷
2013/01/08 面试题
简历里的自我评价
2014/01/31 职场文书
翻译学院毕业生自荐书
2014/02/02 职场文书
给领导的检讨书
2014/02/16 职场文书
房地产推广策划方案
2014/05/19 职场文书
公司总经理岗位职责范本
2014/08/15 职场文书
办公用房租赁协议书
2014/11/29 职场文书
2015年班长个人工作总结
2015/04/03 职场文书
Python WSGI 规范简介
2021/04/11 Python
Go语言编译原理之变量捕获
2022/08/05 Golang