Django 基础教程

Django 查询

Django 展示数据

Django Admin

Django 模板

Django 表单组件

Django 高级

Django FAQ

django开发一个管理系统


创建一个完整的 Django 管理系统涉及多个模块。在这里,我将为你展示一个简单的例子,包含以下几个模块:

  1. 模型(Model):定义数据模型,即数据库表结构。
  2. 视图(View):处理用户请求,返回相应的数据和页面。
  3. URL 配置:将 URL 映射到相应的视图函数。
  4. 模板(Template):用于渲染页面展示。
  5. 静态文件:包含 CSS、JavaScript 等前端文件。
  6. 表单(Form):用于处理用户输入数据。

假设我们要开发一个简单的图书管理系统,包含图书的标题、作者和出版日期。

首先,确保你已经安装了 Django。然后按照以下步骤进行开发:

创建 Django 项目和应用

# 创建项目
django-admin startproject library_management

# 进入项目目录
cd library_management

# 创建应用
python manage.py startapp books

定义模型

打开 books/models.py 文件,定义图书模型:

from django.db import models

class Book(models.Model):
    title = models.CharField(max_length=100)
    author = models.CharField(max_length=100)
    publication_date = models.DateField()

    def __str__(self):
        return self.title

创建数据库表

运行以下命令,生成数据库表:

```pre language-bash python manage.py makemigrations python manage.py migrate


### 创建表单

在 books/forms.py 文件中定义图书表单:

```python
from django import forms
from .models import Book

class BookForm(forms.ModelForm):
    class Meta:
        model = Book
        fields = ['title', 'author', 'publication_date']

创建视图

在 books/views.py 文件中定义视图函数:

from django.shortcuts import render, redirect
from .models import Book
from .forms import BookForm

def book_list(request):
    books = Book.objects.all()
    return render(request, 'books/book_list.html', {'books': books})

def add_book(request):
    if request.method == 'POST':
        form = BookForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('book_list')
    else:
        form = BookForm()
    return render(request, 'books/add_book.html', {'form': form})

创建模板

在 books/templates/books 文件夹下创建两个模板文件 book_list.html 和 add_book.html,分别用于展示图书列表和添加图书的页面。

book_list.html

<!DOCTYPE html>
<html>
<head>
    <title>Book List</title>
</head>
<body>
    <h1>Book List</h1>

        {% for book in books %}*   {{ book.title }} - {{ book.author }} - {{ book.publication_date }}
    <a href="{% url 'add_book' %}">Add Book</a>
</body>
</html>

add_book.html

<!DOCTYPE html>
<html>
<head>
    <title>Add Book</title>
</head>
<body>
    <h1>Add Book</h1>
    <form method="post">
        {% csrf_token %}
        {{ form.as_p }}
        <button type="submit">Save</button>
    </form>
</body>
</html>

URL 配置

在 library_management/urls.py 中配置 URL 映射:

from django.contrib import admin
from django.urls import path
from books.views import book_list, add_book

urlpatterns = [
    path('admin/', admin.site.urls),
    path('books/', book_list, name='book_list'),
    path('books/add/', add_book, name='add_book'),
]

运行开发服务器

现在,运行以下命令启动 Django 开发服务器:

pre language-bash python manage.py runserver

访问 http://127.0.0.1:8000/books/ 可以查看图书列表,访问 http://127.0.0.1:8000/books/add/ 可以添加新的图书。

以上是一个简单的图书管理系统示例,涵盖了 Django 中常用的模块。在实际开发中,可能会涉及更多功能和复杂的业务逻辑。这里只是一个入门级的示例,希望能帮助你理解 Django 中的模块和基本开发流程。

Django是一个功能强大的Web应用程序框架,它提供了一系列的内置功能,其中包括角色权限管理系统。auth`应用程序已添加到`INSTAL ...
创建一个简单的Django图书馆图书管理系统,我们可以按照以下模块来实现:1.py`文件中,编写视图函数:###编写模板在`library` ...
Django是一个强大的PythonWeb框架,适用于开发各种类型的Web应用程序。Web应用程序:Django非常适合构建各种规模的Web ...
Django是一个流行的PythonWeb框架,用于快速构建高质量的Web应用程序。这些教程通常会从基础开始介绍Django的核心概念,并引 ...
以下是几个适合新手开发的热门Django项目:待办事项应用:描述:这是一个简单的待办事项管理应用,允许用户创建、编辑和删除任务,标记任务为已 ...