我刚刚研究了我的“ bug”,结果发现它是Django 1.9中的一项新功能,CharFields默认会删除空格:
https://docs.djangoproject.com/en/1.9/ref/forms/fields/#django.forms.CharField.strip
适用于文本字段TextField的相同接缝。
所以我发现了为什么Django突然表现出与以前不同的行为,但是有没有一种简单的方法来恢复自动生成的管理表单的先前默认值呢?
我不想在仍然使用管理员自动生成的表单的同时不删除空格。那还有可能吗?
最佳答案
如果要查找文本/字符字段,并且不希望其去掉空格,则可以在表单的构造方法中设置strip = False,然后在管理中使用该表单
class YourForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(YourForm, self).__init__(*args, **kwargs)
self.fields['myfield'].strip = False
class Meta:
model = YourModel
fields = "__all__"
然后,您可以通过在admin.py文件中指定
form=YourForm
在管理员中使用此表单。
关于django - Django TextField和CharField正在剥离空格和空白行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38995764/