zoukankan      html  css  js  c++  java
  • 54.1 怎样才算学会django? 知道这28个知识点才算会django2

    学到什么程度才算会django了?这篇文章帮你梳理一下

    关于django2的28个不可不知的知识点总结:

    1.cookie操作:

      -客户端本地存储的键值对

    2.session操作:

      -服务器端可以保存在文件、缓存、变量、数据库……中。

    3.URL路由:

      -/index --->views.函数

    4.MTV:

      model、template、view

    5.View的返回方式:  

      -HttpResponse("内容")
      -render(request,'模板路径',{})
      -redirect('URL')

    6.启动:

      python manage.py  runserver

    7.创建project:

      django-admin startproject [project名称]

      python manage.py startapp [app名称]

    8.URL中有别名:

      [
      path('index/',func,name='xxoo',
      ]

    9.settings.py 中的配置:

      STATICFILES_DIRS=(
      os.path.join(BASE_DIR,'static'),
      )

    10.模板:  

      {{变量}}
      {% for ,if %}

      views.py:

      def func(request):
      return render(request,'index.html',{'arg':[1,2,3,4]})

      在前端取第三个
      html:
      {{arg.2}}

    11.数据库连接修改mysql:

      默认:MYSQLDB
      修改:pymysql

    12.模板继承:

      bolck

      extends

    13.request参数:

      -request.method
      -request.GET
      -request.POST
      -request.POST.getlist

    14.外键

    15.操作数据表:

      python manage.py makemigrtions
      python manage.py migrate

    16.在html中使用别名代替静态文件路径

    17.路由分发

    18.数据操作:

      models.TB.objects.all().delete()
      models.TB.objects.filter(条件).delete()

    19.外键的添加:

    class A(models.Model):
    		name=c
    	
    	class B():
    		title='1'
    		fk=FK(A)
    	models.B.objects.create(
    		title='1',
    		fk_id=1	
    	)
    

    20.外键关联删除

    21.URL匹配:

    path('reset/<str:active_code>',ResetView.as_view(),name='reset_pwd'),
    

      

    22.ORM:

       -Models中操作
      -shell中操作

      对象=models.TB.objects.get(id=1)
      [对象,]=models.TB.objects.filter(id=1)

    23.CSRF

    24.自定义标签

    25.XSS攻击:

    views.py:
    		def func(request,nid):
    			return render(request,'x.html',{'k1':'v1','k2':"<h1>v2</h1>"})
    	
    	x.html:
    		{{k1}}
    		{{k2}}
    		页面输出:
    			v1
    			<h1>v2</h1>
    		
    		{{k1}}
    		{{k2|safe}}
    		页面输出:
    			v1
    			v2(加大加粗)
    

    26.修改数据的两种方式:

    1.
    		obj=models.TB.objects.get(id=1)
    		obj.name='新名称'
    		obj.save()
    	2.
    		models.TB.objects.filter(id=1).update(name='新名称')
    

    27.多表查询 双下划线跨表


    28.URL namespace

      

  • 相关阅读:
    数据库隔离级别
    Mysql 命令详解
    Mysql 索引
    强化学习(四):蒙特卡洛方法
    强化学习(三):动态编程
    强化学习(二):马尔可夫决策过程
    强化学习(一): 引入
    自然语言处理(五)时下流行的生成模型
    论文选读三 QANet
    皮质学习 HTM 知多少
  • 原文地址:https://www.cnblogs.com/xuepangzi/p/8487158.html
Copyright © 2011-2022 走看看