django-rest-framework学习之路-1-搭建项目


0、写在前面

本次学习python版本是python3.9.9

安装路径是E:\Python39(已经配置了环境变量)

1、下载需要的模块

python -m pip install django
python -m pip install djangorestframework 
python -m pip install pygments  # 代码高亮插件

下载后找到django-admin.exe路径,就在安装Python目录的Scripts文件夹下

?E:\Python39\Scripts\django-admin.exe

各模块版本信息(可以不一样,以你的为主就行)

django 4.0.4
djangorestframework 3.13.1
pygments 2.12.0

2、创建带有模型的项目

创建项目

选择一个文件夹,存放代码,例如D:\Project\PythonProject\drf_study

在此处打开cmd(或者任意位置打开cmd,然后切换到该目录下)

使用django-admin.exe开始创建项目,名称为tutorial(django-admin.exe路径上面已经找过一次了,这里直接用绝对路径)

E:\Python39\Scripts\django-admin.exe startproject tutorial

创建完成后,文件夹可以看到该项目了

项目结构如下

创建一个app,名为snippets

cd tutorial
python manage.py startapp snippets

创建后的目录结构

注册APP到INSTALLED_APPS中

修改tutorial/settings.py文件,添加snippetsapp和rest_framework这两个APP到INSTALLED_APPS中

添加模型module

在snippets/models.py添加代码,创建module

from django.db import models
from pygments.lexers import get_all_lexers
from pygments.styles import get_all_styles

LEXERS = [item for item in get_all_lexers() if item[1]]
LANGUAGE_CHOICES = sorted([(item[1][0], item[0]) for item in LEXERS])
STYLE_CHOICES = sorted((item, item) for item in get_all_styles())


class Snippet(models.Model):
    created = models.DateTimeField(auto_now_add=True)
    title = models.CharField(max_length=100, blank=True, default='')
    code = models.TextField()
    linenos = models.BooleanField(default=False)
    language = models.CharField(choices=LANGUAGE_CHOICES, default='python', max_length=100)
    style = models.CharField(choices=STYLE_CHOICES, default='friendly', max_length=100)

    class Meta:
        ordering = ('created',)

这个模型的大概意思就是保存代码的标题,代码本身,代码的语言和代码风格,用户可以自己创建自己的代码,可以看到别人的代码,用户可以修改自己的代码,而别人只能看不能修改,基本上实现了这么一个功能。

3、同步数据库

在刚才的cmd窗口执行命令,同步模型到数据库

python manage.py makemigrations snippets
python manage.py migrate

学习链接:https://www.w3cschool.cn/lxraw/lxraw-8kq335ob.html