一 DJango 所有命令:

  1下载:   

控制台:
pip install django==1.11. ​pip install django==1.11. -i 源
解释器:
找到解释器,点击加号搜索django

  2创建项目;

控制台:  
当前创建文件的目录 django-admin startproject 项目名称 (这里创建的项目没有模板文件templates)
pc创建:
 file-->newprojet-->django-->(里面可以直接编辑templatesw和app文件名)

  3 启动项目:

控制台:
切换到项目目录 python manage.py runserver #127.0.0.1:(默认的)
ip和端口可以改: .............192.168.1.1:#192.168.1.1:

  4 创建app :

控制台:
使用python自带控制台就不需要定义当前目录了,直接 manage.py startapp app文件名
pc:
Tools-->run manage.py task -->startapp app名字
app文件下的py文件:
  views.py (写函数)
  models(orm相关)
  admi.py(管理后台)
  apps.py
  tests.py(测试用)

  5 数据库迁移:

python manage.py makemigrations  #会在migration文件下产生一个py文件将models变更记录保存
python manage.py migrate # 同步到数据库

二 django srttings配置

  

NSTALLED_APPS = [

​    'app01'  或者 ‘app01.apps.App01Config’(用pc创建会自带这个)

] 
数据库的配置

​    ENGINE: mysql

​    NAME: 数据库名称

​    HOST:  IP  

​    PORT: 

​    USER: 用户名

​    PASSWORD: 密码
静态文件

​    STATIC_URL = '/static/'   # 别名  注意你的静态文件外接开头都要使用/static/
​ STATICFILES_DIRS = [ ​ os.path.join(BASE_DIR,'static'),(可以配置多个,但他会按顺序找,找到一个就不找了) 
​ os.path.join(BASE_DIR,'static1'), ​ ]
中间件:

​    注释csrf的中间件      ——》 可以提交POST请求
TEMPALTES

```
'DIRS': [os.path.join(BASE_DIR, 'templates')] # 检查你的模板配置是不是这个路径,一般没错
```

三 django 使用mysql数据库:

  1控制台创库  

  2 配置; django默认使用他自己的 sqlite3数据库

  3 告诉django 使用pymysql连接数据库(

    在settings.py同级目录下__inin__,py中写

   import pymysql
pymysql.install_as_MySQLdb() 

  4  在app下的models.py中写类(继承models.Model):

   

from django.db import models

class BookManage(models.Model):

    pid=models.AutoField(primary_key=True) # 设置主键 并且让其自增
name=models.CharField(max_length=,unique=True) #设置名字字段,并且让其唯一 def __str__(self): return self.name

  5  执行数据库迁移的命令   

  python manage.py makemigrations  # 将models变更记录保存到migrations

   python manage.py migrate    # 将变更同步到数据库中

四  get和 post

  get: 获取一个页面

    在地址栏里输入回车

    form 表单 默认就是get

    a标签

    重定向也算是get(跳转)

  get提交数据:  127.0.0.1:8000/edit_publisher/?pk=3&k1=v1

    获取get数据:  request.GET .get(''pk'') #返回的是一个类似字典的东西 所以可以直接通过get(键)来获取数据 ,也可以通过索引来取

  post: 提交数据:

    form表单

五 orm (对象关系映射)

    对应关系:

       类------>表

       对象----->数据

       属性----> 字段

from app01 import models # 先导入modes模块

曾:

models.Publisher.objects.create(name='xxxxx出版社')   ——》返回字符串对象

查:

​    models.Publisher.objects.get(pk=)     —— 》返回字符串对象  #dasdggfrg <class 'app01.models.BookManage'>

​    models.Publisher.objects.filter(pk=)  ——》 返回单行对象列表 

​    models.Publisher.objects.all()      ——》 返回全部对象列表  

删:

models.Publisher.objects.get(pk=).delete() 

​    models.Publisher.objects..filter(pk=).delete() 

改:

  

obj = models.Publisher.objects.get(pk=) # 返回的是对象

​    obj.name = 'xxxxx'  

​    obj.save() 

六  模板语法:

  

render(request,'模板的文件名',{ 'new_name': 'xxxxx','all_publisher' : all_publisher })

.变量

{{  new_name  }}  ——》 xxxxx

.for循环

{%  for i in all_publisher %}

​    {{  forloop.counter  }}

​    {{  i  }}

​    {{  i.name  }}

​    {{  i.pid }}   {{  i.pk }}

{% endfor %}

    

    

  

DJango 前三天小结的更多相关文章

  1. day 53-1 Django基础三之视图函数

    Django基础三之视图函数   本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...

  2. day 67 Django基础三之视图函数

    Django基础三之视图函数   本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...

  3. 用python+selenium抓取知乎今日最热和本月最热的前三个问题及每个问题的首个回答并保存至html文件

    抓取知乎今日最热和本月最热的前三个问题及每个问题的首个回答,保存至html文件,该html文件的文件名应该是20160228_zhihu_today_hot.html,也就是日期+zhihu_toda ...

  4. <记录学习>(前三天)京东页面各种注意点

    培训学校第1到3天先学习HTML现在流行的是HTML5,目前学习的是HTML5规范.(给有基础一定的人学习)前三天学习的是京东页面的编写,和以前写的不同,页面看上去和自己写的一样,但老师讲的还是有很多 ...

  5. jq最新前三篇文章高亮显示

    /*---------最新前三篇文章高亮显示-------------*/ function latest(){ var color_arr=new Array( "blue", ...

  6. NOIP2008提高组(前三题) -SilverN

    此处为前三题,第四题将单独发布 火柴棒等式 题目描述 给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A.B.C是用火柴棍拼出的整数(若该数非零,则最高位不能是0).用火柴棍拼数字0 ...

  7. 【HDOJ】前三百留念

    4个月不到的时间,终于刷到了HDOJ前三百.肯定还不够,好多基本的算法还不了解.还得继续学习.以此留念,假期目标是前一百.

  8. 对编程语言的需求总结为四个:效率,灵活,抽象,生产率(C++玩的是前三个,Java和C#玩的是后两个)

    Why C++ ? 王者归来(转载) 因为又有人邀请我去Quora的C2C网站去回答问题去了,这回是 关于 @laiyonghao 的这篇有点争议的博文<2012 不宜进入的三个技术点>A ...

  9. 使用批处理bat作为日期系统日期的前三天

    在管理server它经常是依据一天来推断载日期系统日志文件,例如,上周五,周一的需要上传日志.上传日志的日期前一天,日志文件命名的日期.这需要获得的日期的前三天.或之前n当天日期. 批量绑定vbs可以 ...

随机推荐

  1. 微信为什么不能下载apk 微信不能打开App下载地址的问题

    此方法可以实现微信内置浏览器跳转到手机其它浏览器,现在网上其它的方法都只是一个页面,让访问者自己手动点右上角浏览器打开,而这个不同,是可以直接自动跳转的.       <?php   error ...

  2. MySQL 必知必会学习笔记(常用命令一)

    SHOW DATABASES;USE LangLibCEE;SHOW TABLES;SHOW COLUMNS FROM customers;DESC customers; SHOW STATUS WH ...

  3. Python 正则表达式相关问题

    这几天学习python,写正则表达式相关代码如下: import re print(re.search(r'(?<=<(\w+)>).*(?=<\/\1>)'," ...

  4. Python中字符串的处理方法

    1.字符串 word = '字符串' sentence = "这是一个句子." paragraph = """这是一个段落, 可以由多行组成" ...

  5. volatile 与 JVM 指令重排序

    前言: 在做单例模式时 有博客在评论区 推荐使用 volatile 关键字 进行修饰 然后用了两天时间查资料看文档 发现涉及的面太广 虽然已经了解为什么要使用 volatile + synchroni ...

  6. vue项目使用前端框架开发,实现滑动效果,若不刷新页面则无法达到预期效果的问题及解决方法

    滑动等效果的初始化时机很重要,在vue项目开发中,需到mounted()钩子函数 (当组件中的DOM结构被渲染好并放到页面中后,会执行这个钩子函数,此时即可初始化滑动效果的js代码). 若组件未挂载到 ...

  7. Linux磁盘故障案例

    原因:由于另外一块磁盘不存在,但是配置文件/etc/fstab中又有挂载的配置,挂载出问题就导致这样的故障. 输入root密码进去 编辑/etc/fstab文件把箭头指向的这一行注释掉或者删除掉.然后 ...

  8. 小白的Redis学习(一)-SDS简单动态字符串

    本文为读<Redis设计与实现>的记录.该书以Redis2.9讲解Redis相关内容.请注意版本差异. Redis使用C语言实现,他对C语言中的char类型数据进行封装,构建了一种简单动态 ...

  9. APP在线课程设计

    VR在线课程是我们的主打产品,分为“人工智能鱼”.“海洋史”.“濒危海洋动物保护”.“生物进化”.“海洋知识科普”和“海洋法律”等六大主题,其中“人工智能鱼”为主打特色课程,每个主题也设置了不同难度系 ...

  10. Maven中添加镜像

    Maven库在天朝的下载速度实在是感人,所以添加镜像之后速度会提升很多. 在maven的settings.xml 文件里配置mirrors的子节点,添加如下mirror <mirror> ...