自学内容网 自学内容网

如何使用 Django-admin 实现文章上传

如何使用 Django-admin 实现文章上传

Django-admin 是 Django 提供的自动化管理工具,允许我们轻松管理和操作数据库中的内容。下面,我将详细讲解如何使用 Django-admin 实现文章上传,注意通俗易懂并且层次清晰。

原理

我们将创建一个 Django 应用,定义一个文章模型(Article),配置 Django-admin 管理界面,并通过 Django-admin 上传文章。步骤如下:

  1. 创建 Django 项目和应用
  2. 定义文章模型
  3. 注册模型到 Django-admin
  4. 运行 Django 开发服务器
  5. 通过 Django-admin 界面上传文章

详细步骤与示例

1. 创建 Django 项目和应用

首先,确保你已经安装了 Django。然后创建一个新的 Django 项目和应用。

# 安装 Django
pip install django

# 创建 Django 项目
django-admin startproject myproject

# 进入项目目录
cd myproject

# 创建 Django 应用
python manage.py startapp blog
2. 定义文章模型

blog/models.py 中定义文章模型:

from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    published_date = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

然后运行以下命令创建数据库迁移,并应用迁移:

python manage.py makemigrations
python manage.py migrate
3. 注册模型到 Django-admin

blog/admin.py 中注册文章模型:

from django.contrib import admin
from .models import Article

@admin.register(Article)
class ArticleAdmin(admin.ModelAdmin):
    list_display = ('title', 'published_date')
    search_fields = ('title',)

# 另一种注册方法(不使用装饰器)
# admin.site.register(Article, ArticleAdmin)
4. 配置 Django 项目

确保在 myproject/settings.py 中将 blog 应用添加到 INSTALLED_APPS 列表:

INSTALLED_APPS = [
    # ...
    'blog',
    # ...
]
5. 创建超级用户

创建一个超级用户以访问 Django-admin 界面:

python manage.py createsuperuser

按照提示设置用户名、电子邮件和密码。

6. 运行 Django 开发服务器

使用以下命令运行 Django 开发服务器:

python manage.py runserver

打开浏览器,访问 http://127.0.0.1:8000/admin/,使用创建的超级用户账户登录。你会看到一个管理界面,其中包括我们注册的 Article 模型。

7. 通过 Django-admin 界面上传文章
  1. 登录 Django-admin 界面。
  2. 点击 Articles
  3. 点击右上角的 Add article 按钮。
  4. 填写文章的标题和内容,然后点击 Save 按钮。

现在,文章已经上传并保存在数据库中。

示例总结

完整项目结构如下:

myproject/
    manage.py
    myproject/
        __init__.py
        settings.py
        urls.py
        wsgi.py
    blog/
        __init__.py
        admin.py
        apps.py
        migrations/
            __init__.py
        models.py
        tests.py
        views.py

代码总结

models.py
from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    published_date = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title
admin.py
from django.contrib import admin
from .models import Article

@admin.register(Article)
class ArticleAdmin(admin.ModelAdmin):
    list_display = ('title', 'published_date')
    search_fields = ('title',)

总结

通过上述步骤,你已经学会了如何使用 Django-admin 实现文章上传。总结一下:

  1. 创建项目和应用:使用 django-admin startprojectstartapp 创建项目和应用。
  2. 定义模型:在 models.py 中定义模型,并运行迁移命令创建数据库表。
  3. 注册模型到 Django-admin:在 admin.py 中注册模型,配置管理界面。
  4. 配置项目:确保在 settings.py 中添加应用到 INSTALLED_APPS
  5. 创建超级用户:使用 createsuperuser 命令创建管理员账户。
  6. 运行开发服务器:使用 runserver 命令启动服务器,访问 Django-admin 界面进行操作。

通过这些步骤,你可以快速上手 Django-admin 并实现文章上传功能。


原文地址:https://blog.csdn.net/pumpkin84514/article/details/140727065

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!