1.新建django工程
进入window命令行,切换到放django工程的目录
注:换盘,cd切换目录
输入:django-admin startproject 工程名
2.在pycharm打开创建的工程
3.点击open后,可能会弹出提示框,是否新打开一个界面,选是就行。
打开新界面(也就是demo项目)的terminal
输入以下命令:(cmd下输入或是终端输入)
如果终端不在demo文件目录下,需要输入:cd /Users/apple/PycharmProjects/demo 进入demo目录。
输入python manage.py startapp myweb (其中myweb是应用名,可替换)创建应用
输入python manage.py runserver 启动服务
pycharm可以配置runserver:
创建django
配置运行的服务器
运行manage.py即可启动django服务
4.工程下各个文件的名称
参照
https://blog.csdn.net/sumaoyan1787/article/details/100284886
MyWeb:
● migrations: 用于数据库的迁移
● init.py: 初始化文件
● admin.py: 当前App的后台管理系统
● app.py: 当前App的配置信息,通常无需修改
● model.py: 定义在映射类关联数据库,MTV中的Model
● tests.py: 自动化测试后模块
● views.py: 逻辑处理模块,MTV中的Views
重点关注:
urls.py
网址入口,关联到对应的views.py中的一个函数(或者generic类),访问网址就对应一个函数。
views.py
处理用户发出的请求,从urls.py中对应过来, 通过渲染templates中的网页可以将显示内容,比如登陆后的用户名,用户请求的数据,输出到网页。
models.py
与数据库操作相关,存入或读取数据时用到这个,当然用不到数据库的时候 你可以不使用。
forms.py
表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,当然你也可以不使用。
templates 文件夹
views.py 中的函数渲染templates中的Html模板,得到动态内容的网页,当然可以用缓存来提高速度。
admin.py
后台,可以用很少量的代码就拥有一个强大的后台。
settings.py
Django 的设置,配置文件,比如 DEBUG 的开关,静态文件的位置等。
一个简单的登录接口示例
- url.py 路由处理
from django.conf.urls import url
from django.contrib import admin
from django.urls import path
from MyWeb.views import Login, transport
urlpatterns = [
path('admin/', admin.site.urls),
# 字符前加r 防止字符串进行转义
url(r'login/', transport), # 跳转到views.py下transport方法
url(r'realLogin/', Login) # 跳转到views.py下Login方法
- view.py 逻辑处理
from django.http import HttpResponse
from django.shortcuts import render
# Create your views here.
def transport(b):
return render(template_name="login.html", request=b)
def Login(a):
# 获取请求的username和password
username = a.POST.get('username')
password = a.POST.get('password')
print(username, password)
if username == password:
# httpResponse 页面响应内容
return HttpResponse('Your username is equal with the password!')
else:
return HttpResponse('Success to login in!')
- html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
<form action="/realLogin/" method="post">
<h1>用户名:<input name="username"></h1>
<h1>密码:<input name="password"></h1>
<input type="submit" value="登录">
</form>>
</body>
</html>
首先访问http://127.0.0.1:8000/login/(根据url.py文件对应具体函数),会跳转到views.py下transport方法,而transport方法链接到login.html.login.xml的表单action到某个请求下,返回url.py进行路由寻址,最终映射到realLogin函数,进行消息响应。
注意事项:
1.post需要取消安全验证
2.html目录映射要加上
python字典转化成json,然后通过HttpResponse返回json格式数据,需要加上content_type。