1.在列表展示页,配置商品名称字段为链接的形式,配置每页显示的条数(自行根据数据量进行配置) 2.在编辑页,配置fields和fieldsets字段 3.引入xadmin,进行页头和页脚配置
时间: 2023-06-15 16:06:53 浏览: 109
xadmin的配置
1. 在 xadmin.py 文件中,找到要展示的 Model 对应的 Admin 类,添加 list_display 属性,如下所示:
```python
class ProductAdmin(object):
list_display = ('name_link', 'price', 'category', 'created_at')
def name_link(self, obj):
return format_html("<a href='{}'>{}</a>", obj.url, obj.name)
name_link.short_description = 'Name'
```
其中,name_link 方法返回一个 HTML 链接,链接的地址为 obj.url,链接的文本为 obj.name。在 list_display 中添加该方法的名称,即可将商品名称以链接的形式展示。
2. 在 ModelAdmin 类中,可以定义 fields 和 fieldsets 属性,用于配置编辑页的表单。例如:
```python
class ProductAdmin(object):
fields = ('name', 'description', 'price', 'category')
fieldsets = (
(None, {'fields': ('name', 'description')}),
('Price', {'fields': ('price',)}),
('Category', {'fields': ('category',)}),
)
```
其中,fields 属性指定表单中要显示的字段,fieldsets 属性则可以将字段分组展示。
3. 在 settings.py 文件中,将 xadmin 添加到 INSTALLED_APPS 中,并配置 STATICFILES_DIRS 和 TEMPLATE_DIRS:
```python
INSTALLED_APPS = [
# ...
'xadmin',
'crispy_forms',
# ...
]
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
TEMPLATES = [
{
# ...
'OPTIONS': {
'context_processors': [
# ...
'django.template.context_processors.request',
# ...
],
'loaders': [
# ...
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# ...
],
},
},
]
```
然后,在 urls.py 文件中,将 xadmin 添加到 URLConf 中:
```python
import xadmin
from django.urls import path, include
urlpatterns = [
# ...
path('xadmin/', xadmin.site.urls),
# ...
]
```
此时,就可以访问 http://localhost:8000/xadmin/,打开 xadmin 的后台管理界面了。在 xadmin.py 文件中,可以配置页头和页脚,例如:
```python
xadmin.site.site_header = 'My Site Administration'
xadmin.site.site_title = 'My Site'
xadmin.site.index_title = 'Dashboard'
```
这样就可以自定义后台管理界面的页头和页脚了。
阅读全文