在我的Django模型的一个字段中,我希望用户在Textfield的末尾键入一个点('。')。否则我想添加它。
我考虑过使用验证器,但似乎这不是正确的方法:
name = models.TextField(validators=[validate_dot])
def validate_dot(value):
if value:
if value[-1] != '.':
return value + '.'
我需要的是更改TextField的值(如果需要),不要引发错误。
实现它的最佳方法是什么?
答案 0 :(得分:0)
您可以覆盖模型上的save()
方法。
def save(self, *args, **kwargs):
if not self.name.endswith("."):
self.name = self.name + "."
super(Model, self).save(*args, **kwargs)