Django的一些基本配置

Posted yuan-x

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django的一些基本配置相关的知识,希望对你有一定的参考价值。

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 命令行启动:

    cdmanage.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的一些基本配置的主要内容,如果未能解决你的问题,请参考以下文章

Django安装配置及一些基础知识点

73django之setting配置汇总

Python之路58-Django安装配置及一些基础知识点

Django中一些配置

django中的models模块及数据库一些基本操作

Django日志配置