2019独角兽企业重金招聘Python工程师标准>>>

今天我们学习Django框架配置,首先先来看一下如何在Django中创建APP!

1.Django中创建APP

首先我们打开PyCharm,找到之前你创建的Django项目,我的项目是First_Project

  • (1)先选中你要运行的项目-->然后点击Tools-->Run manage.py Task-->进入manage.py控制台(或者直接快捷键Ctrl+Alt+R进入);

  • (2)然后在manage.py控制台中输入startapp 你想要的名称创建app,如我需要创建一个名为users的app,那我需要在控制台中输入startapp users

  • (3)你可以创建一个或多个app,而为了方便管理多个app文件,我们可以创建一个apps目录,将所有创建的app都移入其中;

  • (4)如果我们想要直接使用apps里面的app文件导入模块,我们可以将apps目录设置为Sources Root,操作为:选中apps文件夹-->右击-->Mark Directory as-->Sources Root,那么pycharm将会知道,文件的根路径为apps;

  • (5)设置完后,我们可以直接导入apps目录下任意app中的模块了。但是仅限于在PyCharm中运行,如果想在命令行中运行则会报错(因为Python解释器认为:Python模块的搜索路径是从当前运行的Python文件所在目录开始寻找,然后在是项目的根目录, 一级一级找,最后到site-packages目录)。 那怎么才能在命令行中运行不报错,且将apps在命令行模式下也是Sources Root的话,我们需要在在项目的settings.py文件中导入sys模块,并且加入一行代码:

# 目的就是在django的sys.path模块搜索路径中的第一个位置加上apps的路径
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'));
  • (6)最后,先在我们需要执行的文件中导入django和os两个模块,再加入两句代码,然后就可以导入你要使用的app里面的模块了;
os.environ.setdefault"DJANGO_SETTINGS_MODULE", "First_Project.settings")
django.setup()
  • (7)此时就可以在命令行中执行了,例如python test.py;

2.Django中创建static静态文件目录

配置static静态文件查找路径: 1.首先打开settings文件,找到STATIC_URL = '/static/',这表示指定static静态文件路径

2.但是在template中是无法使用这个路径的,因为没有把这个路径加入到项目的路径中,因此需要把static路径加入到项目的路径中我们需要添加一句代码:

# 表示把static路径加入到项目的路径中
STATICFILES_DIRS = (os.path.join(BASE_DIR, "static"), )

3.这样在template中引用这个静态文件就可以只要指定相对路径就好了

<link rel="stylesheet" type="text/css" href="{% static 'css/course/banner.css' %}"/>

3.Django中创建media媒体文件目录

配置media媒体文件查找路径: 1.在settings文件中加入MEDIA_ROOT = os.path.join(BASE_DIR, 'media')语句,表示把用户上传的所有的东西,如图片等,保存到这个/media/目录下

2.如果我们想要图片上传到/media/banner/%Y/%m/目录下(Y表示年,m表示月),我们可以这样写

image = models.ImageField(max_length=100, upload_to='banner/%Y/%m', verbose_name='用户头像图片')

3.那么在前端的html页面中,我们就可以使用用户上传的图片或其他的可以在html页面显示的东西, 因为数据库中保存了图片上传的路径,{{ MEDIA_URL }}相当于 /media/{{ request.user.image }}相当于 user/1.png,那么 {{ MEDIA_URL }}{{ request.user.image }} 相当于 /media/user/1.png

<img width="20" height="20" src="{{ MEDIA_URL }}{{ request.user.image }}"/>

4.因此必须在urls.py文件中写个路由处理逻辑

from django.views.static import serve
url(r'^media/(?P<path>.*)', serve, {'document_root': MEDIA_ROOT})

我们要注意每次创建一个app都需要在settings中将它注册进来,如果不注册进来,那么执行migration的时候就不会生成表,将app的名称加入到INSTALLED_APPS中;

INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','users','courses','teachers','schools',
]

最后在点击Tool--> Run manage.py Task,在控制台中依次执行makemigrations和migrate生成数据库表

学习参考:https://www.9xkd.com/user/plan-view.html?id=2345964104

转载于:https://my.oschina.net/u/4072026/blog/3051596

Django框架配置相关推荐

  1. django框架访问mysql数据库_Django框架怎么配置mysql数据库

    Django框架怎么配置mysql数据库 发布时间:2020-08-01 10:37:54 来源:亿速云 阅读:67 作者:小猪 这篇文章主要讲解了Django框架怎么配置mysql数据库,内容清晰明 ...

  2. 数据库配置,参考django框架,采用嵌套的字典实现

    # 数据库配置,参考django框架,采用嵌套的字典实现,真的是很灵活啊 DATABASES = {'dev':{'host' : '129.129.17.203','port' : 3306,'us ...

  3. MySQL在Django框架下的基本操作(MySQL在Linux下配置)

    注:本文已迁移至CSDN,后续的更新也会在CSDN. http://blog.csdn.net/houchaoqun_xmu/article/details/53813633 http://blog. ...

  4. pycharm python部署_使用PyCharm配合部署Python的Django框架的配置纪实

    安装软件安装 Python 2.7.PyCharm.pip(Python包管理工具).Django ( pip install Django) 部署PyCharm 新建Django工程 完成后,其目录 ...

  5. python django restful框架_python+django+rest框架配置创建方法

    安装好所需要的插件和包: python.django.pip等版本如下: 采用Django REST框架3.0 1.在python文件夹下D:\python\Lib\site-packages\dja ...

  6. python网络框架生产环境_配置Django框架为生产环境的注意事项(DEBUG=False)

    问题描述: Django1.10版本中框架中settings.py配置文件 配置文件settings.py配置了下面两项: DEBUG=False ALLOWED_HOSTS= ['*'] #这样可以 ...

  7. 【Python/Web】Django(一)Django框架的配置和使用

    序章 Python下面有许多受欢迎的web框架,例如Flask.Twisted等,Django也不例外.许多成功的网站都是基于Django,Django作为一个开源的Web应用框架,采用了 MVT 的 ...

  8. Django框架介绍及配置

    Django框架介绍及配置 一, WEB框架介绍 1.1Web应用程序处理流程 1.2Web框架程序的意义 用于搭建Web应用程序 免去不同Web应用相同代码部分的重复 1.3 Web应用程序的本质 ...

  9. AcWing Django框架课第三节笔记配置docker、git环境与项目创建

    1.该系列为ACWing中Linux基础课,已购买正版,课程作者为yxc. 2.为啥写在这儿,问就是oneNote的内存不够了QAQ 3.本课是第三节课,跳了python3的语法课 该课需要租云服务器 ...

  10. Django框架之第二篇

    Django框架之第二篇 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). view ...

最新文章

  1. 基于布隆过滤器实现敏感词识别和过滤
  2. 在微服务中如何管理数据
  3. 零基础学java web开发pdf_新手学Java Web开发.pdf
  4. Web前端笔记-HTML加载SVG图片及简单修改
  5. android 定制输入法,QQ输入法Android 4.3全新升级 实现私人定制输入
  6. 插件开发之360 DroidPlugin源码分析(二)Hook机制
  7. shell教你如何批量解压缩——unzip命令
  8. SkeyeARS 全景AR增强监视系统解决方案
  9. 【21.09-21.10】近日Paper Quichthrough汇总
  10. Python全栈 MongoDB 数据库(聚合、二进制、GridFS、pymongo模块)
  11. 5分钟了解Pandas的透视表
  12. vue 上传视频到保利威视
  13. 详解TCP的四报文挥手
  14. 计算机笔记Excel,秦路天善智能EXCEL学习笔记1-文本清洗函数
  15. pathon真的那么好用吗?
  16. 领导让我做会议记录,我不会怎么办?
  17. 设计虚拟现实用户体验的深刻见解
  18. 扫地机器人朋友圈文案_扫地机器人方案
  19. python halcon_HALCON高级篇:常用分类器及其特点
  20. vue3加载动态图片

热门文章

  1. Angular 2 Decorators - 2
  2. SecurityError: Blocked a frame with origin from accessing a cross-origin frame
  3. Structs 2 session 学习
  4. lamp环境搭建之配置apache与fpm方式的php
  5. 每日小记2012.5.1
  6. socketpair机制
  7. 大碰撞!当Linux多线程遭遇Linux多进程
  8. 关于“VS2013无法启动程序,系统找不到指定的文件“这个问题的一个解决方法
  9. ubuntu升级tensorflow版本
  10. hive 复合结构Map、Struct详解