码迷,mamicode.com
首页 > 其他好文 > 详细

Django的一些基本配置

时间:2020-04-19 12:30:28      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:span   变更   doc   列表   改变   upd   通过   名称   tap   

1 Django的安装:

  可以使用pip也可以是用pycharm安装

  1 pip install django==1.1.9(版本号自己指定)

  2 pycharm安装

技术图片

 

 

 

 这里指定安装源,最好切换到国内

技术图片

 

 

 

创建django项目:

  可以使用命令行创建,也可以使用pycharm创建

  1 命令行创建

     django-admin startproject 项目名称   

    如果报错 将python中的script文件夹的路径配置环境变量中的基本配置,因为此文件夹下存在django-admin.py文件

  2 pycharm创建:  

     File--new project--选django---然后选择python解释器

技术图片

 

 

 

目录结构说明:

技术图片

 

 

 

Setting 是django项目的配置文件

Urls 是指定路径和函数(django中叫视图)的对应关系

Wsgi  负责socket通讯

 

4 基本使用:

技术图片

 

 

       urls.py中的urlpatterns列表,根据请求首行中的路径和接口做一个对应(映射)关系,一个http请求中含有请求首行,请求头,请求体,也就是接口地址中

      HttpResponse 指定回复http协议,且返回的是一个字符串

 

 

 

 

启动django项目:

  可以使用命令行启动也可以使用pycharm启动

  1 命令行启动:

    cd到manage.py文件所在目录,然后python manage.py runserver ip:port

  2 pycharm启动:

  技术图片

 

 

 

templete配置:

技术图片

 

 

 技术图片

 

 

 

导入render 用于返回文件技术图片

技术图片

 

 这里 ‘xxx/one.html‘  其实django会根据你配置的templete路径下查找

 

static配置:

技术图片

 

 

    然后在html文件引入的时候 将static的路径配上就行了

 

创建app项目:

  可以理解为app就是其中一个应用或者子系统

  

  创建命令---》python manage.py startapp app_name 

技术图片

 

   app目录说明:

    1 migrations    数据库 表相关

    2 apps         app配置相关

    3 models       字段检查相关

    4 tests         测试相关

    5 views         app  视图函数相关

  在django中创建完app之后要在django中注册,让django知道app在哪里

技术图片

 

 技术图片

 

 

 

django中的orm:

  Python语法 自动翻译成 sql语句,为什么会有这个呢?因为程序员写sql水平层次不齐,所以有的人写出来的sql效率就比较低。

    这个有点像js和jQuery的关系

Jquery

DOM

$(‘#d1’)

 document.getElementById(‘d1’)

 

  django默认的是sqlite数据库,我们要切换到mysql数据库,下面是配置。当然如果你使用的python3首先要安装pymysql

  pip install pymysql

技术图片

 

 

然后在app下的__init__.py中做些变更,实际就是告诉django,更改数据库默认配置为pymysql,替换掉mysqldb

技术图片

 

 

相关app下的models.py中创建 相关表和字段

技术图片

 

 

 

类名就是表名,里边的字段就是表中的字段

命令行创建表

Python manage.py makemigrations  

相当于记录了models文件中的操作可以在migrations中看到 此时有2条记录只要以后改变了表中的代码 就必须先执行此命令

技术图片

 

 

Python manage.py meigrate

这一步才是真正的执行

技术图片

 

 

如果要进行删除表操作 只需要在model.py文件中注释掉或者删掉代码,然后重复执行以上两句命令技术图片

 

 技术图片

 

 

pycharm连接mysql数据库:

技术图片

 

 

默认下载驱动 测试连接如果失败 检查 你的账号登录地址 mysql中看下mysql库下的-use表中看下 有没有限制ip登录 或则 驱动不匹配

在mysql中 下载,默认下载最新的

有可以 手动指定版本

技术图片

 

 技术图片

 

 

在弹出的框中可以直接写sql

技术图片

 

 技术图片

 

 

Pycharm 录入快捷键

技术图片

 

 

 

 

 

简单的从mysql 数据库取值

 

Orm  filter 和 get的区别

Get 返回的是一个modles的对象 但是入参只能是主键唯一或者 索引唯一的参数 如果不唯一 则报错

 

Filter 则没有这样的要求 返回的是一个queryset 类似与列表  可以配合 first()  使用 这样就能使用save等方法

 

 

坑:

 

1 模板语法 的坑

 

描述:

 

我希望修改出版社的名称  同时在修改出版社名称的页面,希望能将出版社的就名字带出来 就在模板语法中使用了 name={{book.name}}进行传参 但是发现 在使用 name取值的时候是空  后来经过排查 是模板语法 如果只传一个值  浏览器将name 键名直接改成了id  后来   改成

 

 

 

 

name={{ book.name }}&id={{ book.id }}    就可以了

技术图片

 

 

也可以 直接传id   然后函数中使用orm   通过id 查值 后返回一个对象使用render传给页面  页面在使用 name 键  取值也可以

 

  2 Orm 使用fifter  返回的是个queryset 列表 需要使用索引取值   

    另外orm  做update  直接通过orm对象 赋值就可以额  

Django的一些基本配置

标签:span   变更   doc   列表   改变   upd   通过   名称   tap   

原文地址:https://www.cnblogs.com/yuan-x/p/12730848.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!