我有一个如下模型:
class Page(ContentBase):
url_slug = models.SlugField()
根据 SlugField 文档,slugfields 是“数字、字母、下划线和连字符”。但是,我似乎能够设置具有超出该规范的字符的坏蛞蝓:
page = Page.objects.get(id=872)
page.url_slug = '&*()&*(*(Y*'
page.save()
In [26]: page.url_slug
Out[26]: '&*()&*(*(Y*'
为什么是这样?SlugFields 是否应该根据文档验证其输入,还是我需要自己做?当我似乎能够如此轻松地避免限制时,为什么文档会说明限制?