Django 基础教程

Django 查询

Django 展示数据

Django Admin

Django 模板

Django 表单组件

Django 高级

Django FAQ

django网站实例源码


为您提供一个简单的 Django 网站示例,并对其代码进行介绍,以便您了解 Django 项目的基本结构和运行方式。

在这个示例中,我们将创建一个简单的待办事项清单网站。用户可以添加新的待办事项,查看现有的待办事项列表,并标记已完成的任务。

确保您已经安装了 Django。如果尚未安装,请使用以下命令安装:

pip install Django

创建一个新的 Django 项目并启动应用:

django-admin startproject todo_project
cd todo_project
python manage.py startapp todo_app

在 todo_app 目录下,创建 models.py 文件,定义待办事项模型:

from django.db import models

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

    def __str__(self):
        return self.title

运行数据库迁移,创建数据库表:

python manage.py makemigrations
python manage.py migrate

在 todo_app 目录下,创建 views.py 文件,定义视图函数:

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

def index(request):
    if request.method == 'POST':
        title = request.POST.get('title')
        TodoItem.objects.create(title=title)
        return redirect('index')

    todo_items = TodoItem.objects.all()
    return render(request, 'index.html', {'todo_items': todo_items})

def mark_completed(request, item_id):
    todo_item = TodoItem.objects.get(pk=item_id)
    todo_item.completed = True
    todo_item.save()
    return redirect('index')

def delete_completed(request):
    TodoItem.objects.filter(completed=True).delete()
    return redirect('index')

在 todo_project 目录下,创建 urls.py 文件,并定义 URL 路由:

from django.urls import path
from todo_app import views

urlpatterns = [
    path('', views.index, name='index'),
    path('mark_completed/<int:item_id>/', views.mark_completed, name='mark_completed'),
    path('delete_completed/', views.delete_completed, name='delete_completed'),
]

在项目的根目录下,创建 urls.py 文件,并包含应用的 URL 配置:

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

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

在项目的根目录下,创建 templates 文件夹,并在其中创建一个名为 index.html 的模板文件:

<!DOCTYPE html>
<html>
<head>
    <title>Todo List</title>
</head>
<body>
    <h1>Todo List</h1>
    <form method="post">
        {% csrf_token %}
        <label for="title">New Todo:</label>
        <input type="text" name="title" id="title" required>
        <button type="submit">Add</button>
    </form>

        {% for todo_item in todo_items %}*   <input type="checkbox" {% if todo_item.completed %}checked{% endif %} onclick="location.href='{% url 'mark_completed' todo_item.id %}'">
            {{ todo_item.title }}

    <form method="post" action="{% url 'delete_completed' %}">
        {% csrf_token %}
        <button type="submit">Delete Completed</button>
    </form>
</body>
</html>

运行 Django 开发服务器:

python manage.py runserver

现在,您可以在浏览器中访问 http://127.0.0.1:8000/ 查看并使用您的待办事项清单网站。您可以添加新的待办事项,勾选已完成的任务,并在需要时删除已完成的任务。

请注意,这只是一个简单的示例,用于说明 Django 项目的基本结构和功能。在实际项目中,您可能需要更复杂的功能和更全面的错误处理。如果您对特定功能有更多的问题,可以在需要时进行进一步的学习和调整。

可以告诉你如何找到免费的Django网站项目网站,并向您介绍一些常见的热门Django项目。以下是一些热门的Django项目类型,您可以在上 ...
当您使用Django搭建网站时,以下是基本的步骤流程,我将为您提供每个步骤的详细说明,并结合示例代码进行描述:步骤1:安装Django首先, ...
Django:当然,Django本身就是一个热门的开源项目,它是一个强大的PythonWeb框架,用于快速构建高质量的Web应用程序。Djo ...
###SaleorSaleor是一个高性能的电子商务解决方案,采用Django,GraphQL和React.com/mirumee/sale ...
Django是一个使用Python编写的高级Web框架,它允许开发人员快速构建功能强大且易于维护的Web应用程序。在本说明中,我将为你提供一 ...