django学习1:开发环境搭建

本文介绍了Django不同版本所支持的Python版本,详细步骤演示了如何安装Django、创建项目和应用,启动服务器。还展示了如何设计API、处理POST请求,并解决Django的CSRF保护问题。此外,提到了Django后台管理,包括创建管理员账号和修改密码。
摘要由CSDN通过智能技术生成

1.Django 版本和python 版本对应关系

 

Django versionPython versions
2.23.5, 3.6, 3.7, 3.8 (added in 2.2.8), 3.9 (added in 2.2.17)
3.03.6, 3.7, 3.8, 3.9 (added in 3.0.11)
3.13.6, 3.7, 3.8, 3.9 (added in 3.1.3)
3.23.6, 3.7, 3.8, 3.9
4.03.8, 3.9, 3.10

 

2.安装django

pip install Django==3.0

3.创建工程

// 创建一个工程
django-admin startproject my_django_project
cd my_django_project
// 创建一个应用
python3 manage.py startapp my_django_app

创建工程后INSTALLED_APPS中注册创建的应用

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'voco_app',
]

4.启动工程

如果使用的是阿里云,因为阿里云分内网ip和公网ip,所以先添了一个访问规则

 命令行启动工程

python3 manage.py runserver 阿里云内网ip:自定义端口

打开浏览器输入:阿里云外网ip:自定义端口

如果出现如下界面,说明没在django中配置允许访问的ip,打开settings.py,直接将ALLOWED_HOSTS设置为所有ip都可以访问

ALLOWED_HOSTS = ['*']

再次启动工程,出现如下界面表示启动成功

5.设计一个api

在urls.py中添加一个接口,这个接口在views.py中实现,所以要import views

from firstWeb import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('index/', views.index)
]

在views.py中实现接口,注意如果用post请求,Django有CSRF保护机制,可以加上csrf_exempt装饰器关闭保护

from django.http import HttpResponse,JsonResponse
import json
from django.views.decorators.csrf import csrf_exempt

# Create your views here.

@csrf_exempt
def index(request):
    print("run index!")
    if request.method == "POST":
        req = json.loads(request.body)
        print (req)
        return JsonResponse({"status":"BS.200","msg":"publish article sucess."})

使用postman模拟请求

同时程序也收到了post请求

6.后台管理

先创建一个管理员账号,输入账号密码,然后请求admin域名:

python3 manage.py createsuperuser

修改密码:

python3 manage.py changepassword username

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值