django-创建第⼀个项⽬
⽬录
创建第⼀个demo
安装django
pip安装djnago⽅法:
pip install - U django #下载最新版本
pip install django==3.1.1 #下载指定版本
下载whl⽂件后,进⼊⽬录,通过pip install xxxx.whl
下载⽂件后,进⼊⽬录,对该⽂件进⾏解压,进⼊解压⽬录,通过python setup.py install
创建django项⽬
1、通过django-admin查看运⾏命令
2、django-admin startproject demo #创建项⽬,demo为项⽬名称
⽬录结构:
demo/demo/__init__.py:⼀个空⽂件,⽤于标识⼀个⽬录为python的标准包
demo/demo/settings.py:django项⽬配置⽂件,包括django模块应⽤配置,数据库配置,模板配置等
demo/demo/urls.py:django项⽬的url申明
demo/demo/wsgi.py:与wsgi兼容的web服务器为你的项⽬提供服务的⼊⼝点
demo/manage.py:命令⾏⼯具,使其使⽤django项⽬时以不同的⽅式进⾏交互,通过python demo/manage.py查看运⾏命令
3、通过cd切换到demo⽬录下,django-admin startapp api #创建app名称,api为app的名称
⽬录结构:
api/migrations:⽤于记录models中数据的变更
api/admin.py:映射models中的数据,到django⾃带的admin后台
api/apps.py:⽤于应⽤程序的配置,在新的django版本中新增⽂件
api/models.py:模型⽂件,创建app数据表模型,对应数据库的相关操作
api/tests.py:django测试⽤例
api/views.py:django视图⽂件,控制向前端页⾯显⽰的内容,映射接⼝url
运⾏django项⽬
1、进⼊demo⽬录下,通过python manage.py runserver ip:port
ip可以输⼊指定的本机ip,通过ipconfig查看;端⼝输⼊不冲突的端⼝就⾏;这边ip如果输⼊0.0.0.0代表域⽹内任意⽹络可访问;通过settings.py设置
ALLOWED_HOSTS = ["*"]
配置第⼀个html页⾯
1、在demo/settings.py ⽂件 INSTALLED_APPS 添加api的配置项
#demo/demo/settings.py
INSTALLED_APPS = [
'ib.admin',
'ib.auth',
'ttypes',
'ib.sessions',
'ssages',
'ib.staticfiles',
'api',#配置app
]
2、在api/views.py ⽂件创建index接⼝
#demo/api/views.py
from django.http import HttpResponse
def index(request):
return HttpResponse("hello,django")
3、在demo/urls.py ⽂件配置path
#demo/demo/urls.py
ib import admin
from django.urls import path
from api import views
urlpatterns = [
path('admin/', admin.site.urls),
path('index/',views.index,name='index')
]
5、在demo⽬录下创建,demo/templates/index.html⽂件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>django</title>
</head>
<body>
<h1>hello,django~</h1>
</body>
</html>
#demo/demo/settings.py
TEMPLATES = [
{
'BACKEND': 'plate.backends.django.DjangoTemplates',
django登录注册功能'DIRS': [os.path.join(BASE_DIR, 'templates')],#配置公⽤的templates路径,如果在app⽬录下则不需要指定        'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
't_processors.debug',
'quest',
't_processors.auth',
'ssages',
],
},
},
]
#demo/api/views.py
from django.shortcuts import render
def index(request):
return render(request,"index.html")
实现⼀个登录功能get/post
get请求
1、demo/templates/index.html 写个登录的页⾯,请求⽅式get请求
<!--demo/templates/index.html-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录页⾯</title>
</head>
<body>
<h1>登录页⾯管理~</h1>
<form method="get" action="login/">
<input name="username" type="text" placeholder="username"><br>
<input name="password" type="password" placeholder="password"><br>
<button id="btn" type="submit">登录</button>
</form>
</body>
</html>
2、demo/demo/urls.py修改路由,让ip+端⼝进⼊⾸页,点击登录后执⾏login接⼝;demo/api/views.py实现代码
#demo/demo/urls.py
ib import admin
from django.urls import path
from api import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index, name='index'),
path('login/',views.login,name='login')
]
#demo/api/views.py
import json
from django.http import HttpResponse
from django.shortcuts import render
def index(request):
return render(request,'index.html')
def login(request):
hod == 'GET':
result = {}
req = request.GET#拿到请求体
username = ('username')
password = ('password')
result['code'] = 200
result['message'] = 'success'
result['username'] = username
result['password'] = password
return HttpResponse(json.dumps(result,ensure_ascii=False),content_type='application/json;charset=utf-8')

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。