随笔分类 - Django
发表于 2020-11-26 22:56阅读:3281评论:0推荐:0
摘要:1.起因 在django中为了使用MySQL,一般是在项目目录下的__init__.py中添加 import pymysql pymysql.install_as_MySQLdb() # 使用pymysql代替mysqldb连接数据库 但是有的人使用却会报错, raise ImproperlyCon
阅读全文 »
发表于 2018-10-17 15:50阅读:12422评论:0推荐:3
摘要:本篇主要讨论一下User Model的使用技巧. 注意, 由于Django 1.5之后user model带来了很大的变化, 本篇内容只针对django 1.5之后的版本. 1. 确定 User Model 我们推荐一下方式来确定某一django项目使用的user model: # 使用默认User
阅读全文 »
发表于 2018-10-11 12:11阅读:2022评论:0推荐:0
摘要:指定使用mysql数据库,并指定默认存储引擎 "OPTIONS": {"init_command": "SET storage_engine=INNODB;"} 会报错,正确的解决办法为:
阅读全文 »
发表于 2018-03-08 22:55阅读:384评论:0推荐:0
摘要:一、获取类里面的静态属性以及动态属性的方法 方式一: # 方式一 class Foo(object): user = 123 def __init__(self): self.name = 123 self.age = 456 def aaa(self): self.name = 'sd' obj
阅读全文 »
发表于 2018-03-06 20:52阅读:603评论:0推荐:0
摘要:一 Django的缓存机制 1.1 缓存介绍 1.缓存的简介 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消耗很多的服务端资源,所以必须使用缓存来减轻后端服务器
阅读全文 »
发表于 2018-02-27 14:37阅读:1993评论:0推荐:1
摘要:在使用django restframework serializer 序列化在django中定义的model时,有时候我们需要额外在serializer中增加一些model中没有的字段。有两种方法实现这个目的。 假设现在有一个Animal模型,其中有name, type, country字段,cou
阅读全文 »
发表于 2018-02-26 21:51阅读:2585评论:1推荐:2
摘要:一、ContentType 在django中,有一个记录了项目中所有model元数据的表,就是ContentType,表中一条记录对应着一个存在的model,所以可以通过一个ContentType表的id和一个具体表中的id找到任何记录,及先通过ContenType表的id可以得到某个model,再
阅读全文 »
发表于 2018-02-26 10:54阅读:235评论:0推荐:0
摘要:一、缓存 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存或者Redis中之前缓存
阅读全文 »
发表于 2018-02-26 10:50阅读:602评论:0推荐:0
摘要:概述 对于WEB应用程序:用户浏览器发送请求,服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML)渲染并显示浏览器上。 1、传统的Web应用 一个简单操作需要重新加载全局数据 2、AJAX AJAX,Asynchronous JavaScript and X
阅读全文 »
发表于 2018-02-25 12:22阅读:1056评论:0推荐:1
摘要:一、为什么会有跨域问题? 是因为浏览器的同源策略是对ajax请求进行阻拦了,但是不是所有的请求都给做跨域,对href属性都不拦截。 二、解决跨域问题的两种方式 JSONP CORS 三、JSONP 先简单来说一下JSONP,具体详细详见上面JSONP JSONP是json用来跨域的一个东西。原理是通
阅读全文 »
发表于 2018-02-25 12:13阅读:5353评论:0推荐:2
摘要:一、vue vue前端框架: 修改源: npm config set registry https://registry.npm.taobao.org 创建脚手架: vue init webpack Vue项目名称 #记得把route的这个设置为yes,其他的设置为no 比如: Install vu
阅读全文 »
发表于 2018-02-16 18:59阅读:1097评论:0推荐:1
摘要:一、分页 试问如果当数据量特别大的时候,你是怎么解决分页的? 方式a、记录当前访问页数的数据id 方式b、最多显示120页等 方式c、只显示上一页,下一页,不让选择页码,对页码进行加密 1、基于limit offset 做分页(如:在url后面加上?offset=0&limit=2,即代表从第0条开
阅读全文 »
发表于 2018-02-16 18:57阅读:3314评论:0推荐:2
摘要:一、版本 程序也来越大时,可能通过版本不同做不同的处理 没用rest_framework之前,我们可以通过以下这样的方式去获取。 1 class UserView(APIView): 2 def get(self,request,*args,**kwargs): 3 version = reques
阅读全文 »
发表于 2018-02-16 18:55阅读:5502评论:0推荐:0
摘要:一、认证和授权 a. 用户url传入的token认证 from django.conf.urls import url, include from web.viewsimport TestView urlpatterns = [ url(r'^test/', TestView.as_view()),
阅读全文 »
发表于 2018-02-14 18:53阅读:809评论:0推荐:1
摘要:一、请求到来后,都要先执行dispatch方法 dispatch根据请求方式的不同触发get/post/put/delete等方法 注意,APIView中的dispatch方法有很多的功能 def dispatch(self, request, *args, **kwargs): """ `.dis
阅读全文 »
发表于 2018-02-14 18:52阅读:3326评论:2推荐:2
摘要:一、 什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识,客户端应用通过URL来获取资源的
阅读全文 »
发表于 2018-01-11 23:39阅读:826评论:0推荐:0
摘要:Django中内置的signal Django中提供了"信号调度",用于在框架执行操作时解耦. 一些动作发生的时候,系统会根据信号定义的函数执行相应的操作 Model_signals pre_init # Django中的model对象执行其构造方法前,自动触发 post_init # Django
阅读全文 »
发表于 2018-01-07 10:30阅读:380评论:0推荐:0
摘要:一、http://mail.126.com/ 发送邮件 import smtplib from email.mime.text import MIMEText from email.utils import formataddr msg = MIMEText('老大,我今天需要请假。', 'plai
阅读全文 »
发表于 2018-01-02 08:07阅读:434评论:0推荐:0
摘要:Django内置的Admin是对于model中对应的数据表进行增删改查提供的组件,使用方式有: 依赖APP: django.contrib.auth django.contrib.contenttypes django.contrib.messages django.contrib.sessions
阅读全文 »
发表于 2017-12-28 19:56阅读:391评论:0推荐:0
摘要:实现抽象类的两种方式 方式一 方式二 邮件提醒 动态导入模块+反射 settings
阅读全文 »