python项目中app中admin.py文件的作用
时间: 2024-03-09 20:50:57 浏览: 129
在 Django 项目中,每个应用(app)通常都会包含一个 `admin.py` 文件。这个文件的作用是定义 Django 后台管理界面的显示和行为。
在 `admin.py` 文件中,您可以定义一个或多个 Django 模型(Models)的管理类(Admin class)。这些管理类可以用来自定义 Django 后台管理界面中每个模型的显示和行为。
例如,您可以使用管理类来定义模型的显示字段、搜索字段、过滤器、排序方式、操作按钮等。您还可以定义自定义表单、视图和模板来扩展 Django 后台管理界面的功能。
以下是一个简单的 `admin.py` 文件的示例,其中定义了一个管理类来自定义 `Article` 模型的后台管理界面:
```python
from django.contrib import admin
from myapp.models import Article
class ArticleAdmin(admin.ModelAdmin):
list_display = ('title', 'author', 'pub_date')
search_fields = ('title', 'content')
list_filter = ('pub_date', 'author')
date_hierarchy = 'pub_date'
ordering = ('-pub_date',)
admin.site.register(Article, ArticleAdmin)
```
在这个示例中,我们定义了一个名为 `ArticleAdmin` 的管理类,它继承自 `admin.ModelAdmin` 类。我们使用 `list_display` 属性来定义在模型列表中显示的字段。我们使用 `search_fields` 和 `list_filter` 属性来定义搜索字段和过滤器。我们还使用 `date_hierarchy` 属性来定义按日期分层的导航栏。最后,我们使用 `ordering` 属性来定义模型列表的默认排序方式。
然后,我们使用 `admin.site.register()` 方法将我们的 `Article` 模型和 `ArticleAdmin` 管理类注册到 Django 后台管理界面中。
总之,`admin.py` 文件的作用是给开发者提供一个自定义 Django 后台管理界面的方式,让您可以更好地管理您的应用程序的数据和功能。
阅读全文