这一章我们讲一下前端的集成了:
接下来就要跟前端做集成了、先按这个地址下载文件: https://cdn2.byhy.net/files/django/z_dist.zip
下载的文件一定要放在项目的目录上,然后解压
因为我现在用的是django的开发服务器、我们还没有WEB服务器、不能直接调用上面的下载的文件、我们还要做一些配置
但是前端文件都是静态文件,需要我们配置一下Django的配置文件, 指定http请求如果访问静态文件,Django在哪个目录下查找。
注意,接下来我们配置 Django 静态文件服务, 是 开发时 使用的 一种 临时方案 ,性能很低,这是方便我们调试程序用的。
前面讲过,正式部署web服务的时候,不应该这样干,应该采用其它方法,比如Nginx等。后面的教程会有详细的讲解如何使用Nginx 和 Django 组合使用。
现在,请打开 mydjango/urls.py 文件,在末尾 添加一个
+ static("/", document_root="./z_dist")
并添加如下声明
# 静态文件服务
from django.conf.urls.static import static
django的urls匹配都是按顺序来的、如果上面的三个url没有匹配到、就执行最后的代码
最后的代码是前面下载的APP路径、path路径开头都不能有/反斜杠
输入以下网址:
http://127.0.0.1:8085/mgr/index.html
记得启动django服务器:python manage.py runserver 0.0.0.0:8085
注意:如果你打开上面的网址是空白的、要解决这个问题,请在 Django项目 setting.py 中 末尾添加如下代码,强制Django使用’application/javascript' 作为 js文件类型
import mimetypes
mimetypes.add_type('text/css', '.css')
mimetypes.add_type('application/javascript', '.js')
前面我们 实现了 服务端 管理员 的一些增删改查操作,但是,我们还没有实现管理员 登录的功能呢。
现在我们来根据,API接口文档, 点击这里查看 实现 管理员登录 功能。
先在mgr这个APP下创建py文件
输入以下代码:
from django.http import JsonResponse
from django.contrib.auth import authenticate,login,logout
# 登录处理
def signin(request):
userName=request.POST.get('username')
passWord=request.POST.get('password') #从http、post中提取数据库中存放用户名的字段、帐户与密码
user=authenticate(username=userName,password=passWord) #然后用django中自带的与数据库的帐户密码校验方法、帐户对应帐户、密码对应密码
#如果能找到帐户与密码、就登录成功、反回0
if user is not None:
if user.is_active: #对应的数据库字段、如果字段下是1就是正常使用用户、如果是0就是禁用用户
if user.is_superuser: #对应的数据库字段、如果字段下是1就是管理员
login(request,user) #这个login就是登录进去了、下面就是返回0
request.session['usertype']='mgr' #这个session是对应的数据库的表、这个表是保存用户的登录信息
return JsonResponse({'ret':0,'msg':'登录成功'})
else:
return JsonResponse({'ret':1,'msg':'请用管理员用户登录'})
else:
return JsonResponse({'ret':1,'msg':'帐户已被禁用'})
else:
return JsonResponse({'ret':1,'msg':'帐户或密码错误,请重新输入'})
#退出处理
def sinout(request):
logout(request) #logout这个函数是http中用户登录后退出的方法
return JsonResponse({'ret':0,'msg':'你已退出'})
登录与退出的API创建好了后、我们还要设置USRL路径
上面的是主路由设置、凡是api/mgr这个路径为开头的、都由mgr这个APP下的URL路径来执行
创作不易、持续关注我、为你提供更好的技术!