zoukankan      html  css  js  c++  java
  • ajax的运用

    • 锁:共享锁、排他锁

      • lock in share mode 共享锁开启方式 (都要先开启事物,begin)
      • for update 排他锁开启 (先 begin)
      • 表锁举例:lock table app01_publish write
        • unlock tables;
      • create、update、delete、操作时,MySQL自动加行级互斥锁
      锁
      1.原生中
      select * from t1 where id=1 for update;(写这句前得先开启事物,begin)
      2.orm中
      models.T1.objects.select_for_update().filter(id=1)
      
      
    • 事物四大特性:原子性、永久性、隔离性、一致性。

      原生SQL中开启事物的两种方式:
      1.start transaction;
      2.beigin;
      提交事物
      commit;
      回滚
      roll_back
      
      orm中开启事物的三种方式
      1.
      DATABASES = {
      	'ENGINE':'django.db.backends.mysql',
      	'NAME':'day58',
      	'HOST':'127.0.0.1',
      	'PORT':3306,
      	'USER':'root',
      	'PASSWORd':'root',
      
      	'ATOMIC_REQUESTS':TRUE,  # 全局开启事物,绑定的是http请求响应整个过程
      	
      }
      2.
      from django.db import transaction
      
      @transaction.atomic
      def viewfunc(request):
      	do_stuff()
      
      取消事物
      @transaction.non_atomic_requests
      def my_view(request):
      	do_stuff()
      
      3.上下文
      from django.db import transaction
      
      def viewfunc(request):
      	do_stuff()
      	with transaction.atomic():
      		do_more_stuff()
      	do_other_stuff()
      	
      	
      
    • Ajax(jQuery中的):两个特性

      • 异步请求
      • 局部刷新
      $('#button').click(function(){
      	$.ajax({
      		url:'/login/', # 请求路径
      		type:'post',  # 请求方式
          data:{       # 请求携带数据
            	uname:$('#username'.val()),
              pwd:$('#password'.val()),
            	csrfmiddlewaretoken:$('[name=csrfmiddlewaretoken]')
        			#csrfmiddlewaretoken:"{{csrf_token}}"
            },
              success:function(res){
                  console.log(res)
              },
              error:function(jqXHR,textStatus,err){
               		console.log(arguments) 
              }
      	})
      })
      
      爬虫中的请求:
      ret = requests.post('/login/',data={}) print(ret.content)
      
    • 外部文件导入的方式来写js代码,那么JS代码汇总不能用Django的模板语法,因为HTML文件的加载顺序:URL—视图----HTML模板渲染——return给浏览器—浏览器渲染——script的SRC—才去请求js文件----那么JS文件代码此时才去加载到你的HTML里面。

  • 相关阅读:
    Minimum Depth of Binary Tree leetcode java
    Maximum Depth of Binary Tree leetcode java
    Symmetric Tree leetcode java
    Same Tree leetcode java
    Binary Tree Postorder Traversal leetcode java
    Binary Tree Preorder Traversal leetcode java
    Binary Tree Inorder Traversal leetcode java
    Combinations leetcode java
    一键清除Centos iptables 防火墙所有规则
    阿里云centos7.7x64安装open,并配置ip转发和nat伪装
  • 原文地址:https://www.cnblogs.com/he-qing-qing/p/11264800.html
Copyright © 2011-2022 走看看