我正在保存一个模型,我需要检测用户是否试图更改字段并显示错误:
def save(self, *args, **kwargs):
if self.status is being changed:
error you cannot do that!
如何做到这一点是 Django
我正在保存一个模型,我需要检测用户是否试图更改字段并显示错误:
def save(self, *args, **kwargs):
if self.status is being changed:
error you cannot do that!
如何做到这一点是 Django
看看django-dirtyfields包是否可以帮助你,引用文档:
(ve)$ ./manage.py shell
>>> from testing_app.models import TestModel
>>> tm = TestModel(boolean=True,characters="testing")
>>> tm.save()
>>> tm.is_dirty()
False
>>> tm.get_dirty_fields()
{}
>>> tm.boolean = False
>>> tm.is_dirty()
True
>>> tm.get_dirty_fields()
{'boolean': True}
>>> tm.characters = "have changed"
>>> tm.is_dirty()
True
>>> tm.get_dirty_fields()
{'boolean': True, 'characters': 'testing'}
>>> tm.save()
>>> tm.is_dirty()
False
>>> tm.get_dirty_fields()
{}
>>>
另见:
希望有帮助。