PYTHON August 19, 2018

django增删改查

Words count 7.3k Reading time 7 mins.

models.py

class Student(models.Model):
    stu_name = models.CharField(max_length=30)
    stu_no = models.CharField...
Read article

PYTHON August 19, 2018

django增删改查

Words count 7.3k Reading time 7 mins.

models.py

class Student(models.Model):
    stu_name = models.CharField(max_length=30)
    stu_no = models.CharField(max_length=20)
    stu_sex = models.CharField(max_length=10)
    stu_age = models.IntegerField()
    stu_birth = models.DateTimeField(auto_now_add=True)

    def...
Read article

PYTHON August 19, 2018

django数据models基础

Words count 9.2k Reading time 8 mins.

定义一个Persion模型类,包括first_name、last_name字段

from django.db import models

class Person(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)

first_name 和last_name是模型的领域。每个字段被指定为一个类属性,每个属性映射到一个数据库列,上面的Persion...

Read article

PYTHON August 19, 2018

django配置settings详解

Words count 4.3k Reading time 4 mins.

项目根目录:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

项目安全码:

SECRET_KEY = ')b)3406p#v$u4ft(v@9ex*=0*w1l*=0v0ixdrey)mmcd2uf#(x'

DEBUG调试:

DEBUG = True

不要在实际生产中打开debug

允许访问的主机:

ALLOWED_HOSTS = ['*']

*是代表允许所有主机访...

Read article

PYTHON August 19, 2018

django查询结果转json的几种方法

Words count 3.7k Reading time 3 mins.

def json_test(request):
    data = {}
    book = Book.objects.all()
    data['list'] = json.loads(serializers.serialize("json", book))
    return JsonResponse(data)

得到的结果:

{
  "list": [
    {
      "pk": 3,
      "model&...
Read article

PYTHON August 19, 2018

django模板组件化

Words count 1.9k Reading time 2 mins.

Django中也有模板组件化的思想。在模板的应用中有包含、继承的概念。

不难理解,包含就是指一个模板里包含另一模板里内容

举个栗子

比如我们要再A.html里应用B.html里的内容,也就是A里包含B,我们可以这样写:

<!DOCTYPE html>
<html>
<head>
    <title>title</title>
</head>
<body> 
{% include 'B.html' %}...
Read article

PYTHON August 19, 2018

Django登录权限控制实现

Words count 4.3k Reading time 4 mins.

django版本:

>>> import django
>>> print django.VERSION
(1, 8, 14, 'final', 0)

python版本:

[root@new_name ~]# python -V
Python 2.7.5

设置中间件

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware'...
Read article

PYTHON August 19, 2018

django分页查询

Words count 6.2k Reading time 6 mins.

在view.py里添加分页查询方法

from django.http import JsonResponse
from django.views.decorators.http import require_http_methods
from django.core import serializers
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
import json

# 分页查询
def show_page...
Read article

PYTHON August 19, 2018

python 自定义生成具有时效性的token

Words count 3.1k Reading time 3 mins.

注意测试django版本:

>>> import django
>>> print django.VERSION
(1, 11, 5, u'final', 0)

第一步:随机生成sha1秘钥

利用python里的hashlib库生成 sha1秘钥,这是一个单向加密过程,给这个sha1秘钥起名为sha1_token。

第二步:生成时间戳秘钥

获取当前的时间戳(秒级单位),以及设置token的失效性的时间戳(秒级单位)。将两个时间戳中间用“:”拼...

Read article

PYTHON August 19, 2018

python 获取路径的常见方法

Words count 3.3k Reading time 3 mins.

测试执行路径为:D:\Repository\testapi\learnpath\LearnPath.py

执行以下命令:

print(sys.path)

结果:

[
    "D:\\Repository\\testapi\\learnpath",
    "D:\\Repository\\testapi",
    "C:\\WINDOWS\\SYSTEM32\\python27.zip",
    "C:\\Python27\\DLLs",
    ...
Read article

PYTHON August 19, 2018

QuerySet API

Words count 12k Reading time 11 mins.

从数据库中查询出来的结果一般是一个集合,这个集合叫做queryset

在python Manage.py shell 里执行下列操作

print str(Author.objects.all().query)

结果:

SELECT `blog_author`.`id`, `blog_author`.`name`, `blog_author`.`qq`, `blog_author`.`addr`, `blog_author`.`email` FROM `blog_author`

获取作者的name...

Read article
0%