标签:rem cal 前后端分离 app ons att get pip源 method
FBV:Function base views
def index(request):
if request.method == ‘POST‘:
return HTTPresponse(‘ok’)
elif request.method == ‘GET‘:
return render(request,‘index.html‘)
CBV : class base views
URLS:
urlpatterns=[
url(r‘^index/‘,views.Index.as_view())
]
注:url(r‘^index/‘,views.Index.as_view())是固定用法
views.py
from django import views
class Index(views.View):
def get(self,request):
return render(request,‘index.html‘)
def post(self,request):
print(request.POST)
return render(request,‘index.html‘)
注意事项:
1.CBV定义时一定要继承django.views.View
2.注册路由的时候要写类名 .as_view()
3.具体原理:dispatch()方法中利用反射找到每个请求要执行的
2.前后端分离
1.前端:
- APP
- PC网站
- 移动端网站
2.后端提供 JSON格式数据
3.接口(API)是什么?
URL
4.小项目
1. 使用Django 的视图 自己序列化
1. HttpResponse
2. JsonResponse
2. 使用Django REST Framework 框架的序列化工具类
1. 安装
pip install djangorestframework
2. 导入
from rest_framework import serializers
3. 使用
class ArticleSerializer(serializers.Serializer):
补充知识点:
1. pip
1. pip安装包临时指定 从国内的清华pip源下载:
pip install django==1.11.11 -i https://pypi.tuna.tsinghua.edu.cn/simple
2. 将虚拟环境的依赖包关系导出到requirements.txt
pip freeze > requirements.txt
3. 按照 requirements.txt 安装项目依赖的第三方包
pip install -r requirements.txt
2. 在单独py文件运行django orm语句
import os
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "about_drf.settings")
import django
django.setup()
from app01 import models
...
3. 可调用对象
def xx(arg):
if callable(arg):
print(arg())
else:
print(arg)
xx(‘呵呵‘)
xx(lambda:‘嘿嘿嘿‘)
标签:rem cal 前后端分离 app ons att get pip源 method
原文地址:https://www.cnblogs.com/Mr-Murray/p/9397839.html