- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在我的 models.py 中,我有一个字段:
content_type = models.CharField(u"Content type", max_length=20)
如您所见,这是强制性的。但我想自动给它赋值,所以我这样做了:
def clean_fields(self, *args, **kwargs):
print(kwargs)
self.content_type = "Whatever"
但是在 Django 的管理中,我收到一个验证错误,告诉我该字段是必需的。然而,当我查看 kwargs 的内容时,我得到:
{'exclude': ['id', 'created_on', 'modified_on', 'content_type', 'content_ptr']}
所以我的问题是:1) 为什么该字段出现在“排除”列表中?2)为什么Django会引发这个验证错误?
最佳答案
您可以像这样自动为模型分配一个值。
class ModelName(models.Model)
content_type = models.CharField(u"Content type", max_length=20)
def save(self, *args, **kwargs):
if not self.pk:
self.set_content_type()
super(ModelName, self).save(*args, **kwargs)
def set_content_type(self):
self.content_type = 'Whatever'
self.save()
这样,每当创建该模型的实例时,该字段就会自动获取值。clean_field 用于验证表单字段。
关于python - Django clean_fields 和必填字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35171124/
我遇到的情况是,用户可以单击 html 表单上的复选框字段“field_enable”,并且一个不错的 jQuery 操作将显示另一个字段“fielda”,供用户输入更多数据。当“field_enab
我不明白为什么没有为在管理 View 上更新的内联表单调用 clean_field() 方法。我的代码看起来很简单(见下面的概要)。 当我通过管理界面 (http://admin/..../prima
在我的 models.py 中,我有一个字段: content_type = models.CharField(u"Content type", max_length=20) 如您所见,这是强制性的。
我有一个独特的问题。 我在我的 floatField 中输入了“90 美元”的值。 我认为它应该被清洁并在模型中存储为“90.0”。 但是当我输入“$ 90”并调用 clean_filed 方法时,它
我的问题很简单,我的应用程序模型中有一个继承自 models.Model 的类。 我正在重写 django-admin 的 clean_fields 方法,以便对我的表单执行一些自定义验证。问题是,当
在 form 中在 django , validator 之间有什么区别?对于一个字段和一个 clean_该字段的方法? 最佳答案 Django 将首先运行内置(默认)字段验证器,然后是您的自定义字段
Model.clean() 有什么区别方法和 Model.clean_fields() 方法?。我什么时候应该使用其中一个? 根据Model.clean_fields()方法文档: This meth
在 Model.full_clean 中是否有理由在 clean 之前调用 clean_fields?在我的项目中,如果我可以先进行验证,然后再验证 clean_fields 内容会更合理,就像在这种
我是一名优秀的程序员,十分优秀!