文章目录
加载目录中...

django + layui + sqlite3 配置(2)

管理员 2025-09-05 23:58 65 阅读 web

django + layui + sqlite3 配置

1 创建超级管理员

使用命令python manage.py createsuperuser,输入账号名字和密码。
在app下的admin.py,添加以下命令

class ArticleImageInline(admin.TabularInline):
    model = ArticleImage
    extra = 1          # 默认出现 1 个空白上传框
    fields = ['photo']

@admin.register(Article)
class ArticleAdmin(admin.ModelAdmin):
    list_display = ('title', 'category', 'created_at', 'views')
    list_filter  = ('category', 'created_at')
    search_fields = ('title', 'summary')
    # 编辑页字段顺序
    fields = ('title', 'summary', 'cover', 'category',
              'content_md', 'content_html', 'views')
    readonly_fields = ('content_html', 'created_at', 'updated_at')
    inlines = [ArticleImageInline]

admin.site.register(Category)

其中,ArticleCategory是已经在models.py文件中定义的数据库表。

1.1注册数据库表

如果想对ArticleCategory进行增删改查,那么就需要对该表进行注册,有如下有两种注册方式

@admin.register(Article)           # 使用装饰器的方法进行注册 可以增加一下高级功能
class ArticleAdmin(admin.ModelAdmin):
    .....
    pass
admin.site.register(Category)      # 普通注册 可以支持增删改查

1.2 对数据表进行的操作

@admin.register(Article)           # 使用装饰器的方法进行注册 可以增加一下高级功能
class ArticleAdmin(admin.ModelAdmin):
    list_display = ('title', 'category', 'created_at', 'views')
    list_filter  = ('category', 'created_at')
    search_fields = ('title', 'summary')
    # 编辑页字段顺序
    fields = ('title', 'summary', 'cover', 'category',
              'content_md', 'content_html', 'views')    # 可以显示的 字段
    readonly_fields = ('content_html', 'created_at', 'updated_at')  # 只读字段
    inlines = [ArticleImageInline]

各个变量控制的作用如下:

picture 2

picture 3

2 数据库的增删改查

有关数据库的增删改查,已经被django写好了。

在主urls.py文件中,如果有如下路由

urlpatterns = [
    path('admin/', admin.site.urls),   # 超级管理员 页面的路由
    .........
]

打开(http://127.0.0.1:8000/admin/登录管理员页面,可以对数据库表进行增删改查。