> django管理面板:一种仅阅读数据管理方法
> Django Admin面板提供了用于管理模型,数据和用户的用户友好接口。 它的内置搜索和过滤功能非常方便。但是,有时限制对特定模型或字段的编辑访问至关重要。 当需要维护数据完整性,防止意外修改或面板仅用于数据查看时,尤其如此。
一个实践示例是说明实现的屏幕截图:
管理面板概述:
此视图仅显示导入/导出选项; 直接在管理面板中添加或编辑数据是不可能的。
>>个人条目页面:
同样,单个属性页面以仅阅读模式显示,缺少任何编辑功能。
>让我们探索如何在Django中实现此仅阅读功能。 在Django Admin中禁用编辑>
1。模型定义>用于存储刮擦属性数据的核心模型:
禁用编辑,覆盖
<code class="language-python">from django.db import models class Property(models.Model): name = models.CharField(max_length=255) price = models.IntegerField() location = models.CharField(max_length=255) date_listed = models.DateField() def __str__(self): return self.name</code>
admin.py
>
>基础类(has_add_permission
)在这里用于管理has_change_permission
用于增强的数据表示。admin.py
<code class="language-python">from django.contrib import admin from .models import Property class ReadOnlyAdmin(admin.ModelAdmin): list_display = ('name', 'price', 'location', 'date_listed') def has_add_permission(self, request): return False def has_change_permission(self, request, obj=None): return False admin.site.register(Property, ReadOnlyAdmin)</code>
这种方法实现了:ReadOnlyAdmin
list_display
在 Django Admin 中禁用编辑非常简单,并且对于保护数据和提供安全的只读访问非常有益。 通过执行以下步骤,您可以快速创建安全的只读管理面板。
保持联系 - @syedamahamfahim ?
以上是如何在Django管理面板中禁用管理编辑的详细内容。更多信息请关注PHP中文网其他相关文章!