Asi*_*nox 8 python django django-admin
我想知道如何在Django管理员中显示错误消息.
我的网站上有一个私人用户部分,用户可以使用"点"创建请求.一个请求从用户的帐户中取1或2个点(取决于两种类型的请求),因此如果帐户有0分,则用户无法在私人用户部分发出任何请求...这一切都很好,但是用户也可以打电话给公司并通过电话提出请求,在这种情况下,我需要管理员在用户点数为0的情况下显示自定义错误消息.
任何帮助都会很好:)
多谢你们
Gab*_*ley 20
一种方法是通过覆盖管理页面的ModelForm.这允许您编写自定义验证方法并非常干净地返回您选择的错误.在admin.py中这样:
from django.contrib import admin
from models import *
from django import forms
class MyForm(forms.ModelForm):
class Meta:
model = MyModel
def clean_points(self):
points = self.cleaned_data['points']
if points.isdigit() and points < 1:
raise forms.ValidationError("You have no points!")
return points
class MyModelAdmin(admin.ModelAdmin):
form = MyForm
admin.site.register(MyModel, MyModelAdmin)
Run Code Online (Sandbox Code Playgroud)
希望有所帮助!
我已经将内置的消息系统用于此类事情。这是在您添加/更改对象时在屏幕顶部打印黄色条的功能。您可以轻松地自己使用它:
request.user.message_set.create(message='Message text here')
Run Code Online (Sandbox Code Playgroud)
请参阅文档。
归档时间: |
|
查看次数: |
8588 次 |
最近记录: |