Django入门学习笔记2:基于Django库的后端开发实操

在前面的学习中,我们了解到Django是一个强大的Web框架,可以帮助我们快速搭建Web应用程序。接下来,我们将从零开始,搭建一个简单的Django项目,并实现一个基本的后端功能。我们会创建一个名为“TodoList”的待办事项应用程序,用户能够添加、查看和删除待办事项。

环境准备

在开始之前,确保你的开发环境中已经安装了Python和Django。如果没有安装,可以使用以下命令来安装Django:

pip install django

创建项目

首先,我们需要创建一个新的Django项目。打开终端并运行以下命令:

django-admin startproject TodoList

进入项目目录:

cd TodoList

创建应用

在Django中,项目通常由多个应用组成。我们将创建一个名为“tasks”的应用,专门用于处理待办事项。可以使用以下命令创建应用:

python manage.py startapp tasks

定义模型

接下来,我们需要定义“待办事项”的数据模型。打开tasks/models.py文件,添加如下代码:

from django.db import models

class Task(models.Model):
    title = models.CharField(max_length=200)
    completed = models.BooleanField(default=False)

    def __str__(self):
        return self.title

在这个模型中,我们定义了一个Task类,它有两个字段:titlecompleted,分别表示待办事项的标题和完成状态。

注册模型

为了让Django知道我们定义的模型,需要在tasks/admin.py中注册它:

from django.contrib import admin
from .models import Task

admin.site.register(Task)

创建数据库

接下来,我们需要创建数据库并将模型应用到数据库中。首先,修改TodoList/settings.py文件,确保tasks应用被加入到INSTALLED_APPS中:

INSTALLED_APPS = [
    ...
    'tasks',
]

然后运行以下命令以生成数据库迁移文件:

python manage.py makemigrations

创建数据库:

python manage.py migrate

创建视图

现在我们可以创建视图,以处理用户的请求。打开tasks/views.py,添加以下代码:

from django.shortcuts import render, redirect
from .models import Task

def task_list(request):
    tasks = Task.objects.all()
    return render(request, 'tasks/task_list.html', {'tasks': tasks})

def add_task(request):
    if request.method == 'POST':
        title = request.POST['title']
        Task.objects.create(title=title)
        return redirect('task_list')
    return render(request, 'tasks/add_task.html')

def delete_task(request, task_id):
    task = Task.objects.get(id=task_id)
    task.delete()
    return redirect('task_list')

这里,我们定义了三个视图:task_list用于查看待办事项列表,add_task用于添加新的待办事项,delete_task用于删除指定的待办事项。

配置URL

为了使视图函数能够访问,我们需要在tasks/urls.py中配置URL。

首先创建urls.py文件并添加如下代码:

from django.urls import path
from .views import task_list, add_task, delete_task

urlpatterns = [
    path('', task_list, name='task_list'),
    path('add/', add_task, name='add_task'),
    path('delete/<int:task_id>/', delete_task, name='delete_task'),
]

然后在TodoList/urls.py中包含tasks应用的URL:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('tasks/', include('tasks.urls')),
]

创建模板

接下来,我们需要创建HTML模板来展示待办事项。首先,在tasks目录下创建一个templates文件夹,并在其中创建一个tasks文件夹。然后,创建task_list.htmladd_task.html模板。

task_list.html内容:

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>待办事项列表</title>
</head>
<body>
    <h1>待办事项列表</h1>
    <form action="{% url 'add_task' %}" method="POST">
        {% csrf_token %}
        <input type="text" name="title" required>
        <button type="submit">添加</button>
    </form>
    <ul>
        {% for task in tasks %}
            <li>
                {{ task.title }} 
                <a href="{% url 'delete_task' task.id %}">删除</a>
            </li>
        {% endfor %}
    </ul>
</body>
</html>

add_task.html内容:

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>添加待办事项</title>
</head>
<body>
    <h1>添加待办事项</h1>
    <form action="" method="POST">
        {% csrf_token %}
        <input type="text" name="title" required>
        <button type="submit">添加</button>
    </form>
</body>
</html>

启动项目

一切准备就绪后,我们可以启动Django开发服务器,运行以下命令:

python manage.py runserver

在浏览器中打开http://127.0.0.1:8000/tasks/,你应该能看到待办事项列表页面。

总结

通过以上步骤,我们成功搭建了一个简单的Django项目,创建了待办事项应用,实现了添加、查看和删除待办事项的基本功能。这是Django开发的基础,后续可以添加更复杂的功能,比如用户认证、数据验证等。希望这篇笔记能帮助到正在学习Django的你!

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部