django-validation

    1热度

    1回答

    我有一个模型与自身有多对多的关系。 我想创建一个模型的验证,这将防止一个组成为它自己的子组,或它的子组的子组等等。目标是防止可能导致循环/无限递归。 我已经尝试在模型clean()方法中执行此操作,如下所示。 我也试着在使用事务的模型save()方法中实现这一点。 在这两种情况下,我最终都会遇到将无效更改(错误地)保存到数据库的情况,但如果我试图对任一实例进行进一步更改,则验证会检测到错误,但在此

    2热度

    2回答

    这应该是非常简单的,但我没有从Django文档中找出它。我有一个IntegerField模型字段,我从中创建了一个ModelForm字段。有问题的字段包含$ values(价格),如果用户在输入$ 10而不是10时没有收到错误消息('输入整数'),那么从UX的角度来看会更好。 我已经尝试手动清洁表面,但似乎clean_field方法是在其他验证方法之后运行的。迄今为止我的阅读似乎也证实了这一点。

    1热度

    2回答

    好model.clean,所以我有这样一个模型: class Airplane(models.Model): tail = models.ForeignKey(Tails) wheel = models.CharField(max_length=500,blank=True) window = models.CharField(max_length=500,blank

    1热度

    1回答

    我一直有在决定我是否应该把关于模型或形式的用户输入的业务逻辑,特别是对于简单的商业规则的麻烦。说我有一个产品类,以及业务规则是,它的价格(产品的属性)不能超过$ 1000的。我是否将验证放在模型或表单级别上?你用什么标准来确定这些标准?

    0热度

    1回答

    我有几个关于模型和表单验证的问题。你能帮我解决这些问题吗: 应该在哪里进行验证?它应该在模型还是表单中?正确的做法是在模式中使用验证器的形式和约束条件? 在窗体中写入'clean_'方法和编写验证程序有什么区别?我看到人们经常在'clean_'方法中进行验证检查。 在我正在处理的要求,我在叫“活”的URL字符串设置了一个param。这通常是1或0.什么是以我的形式定义这个的正确方法?我需要验证它是

    0热度

    1回答

    在模型中我有整数字段。此字段的值的含义是“自1970年1月1日以来的天数”,因此我想在管理界面中使用AdminDateWidget作为日期显示它,以便更容易地选择日期。 我唯一的想法是创建新的窗口小部件,以整数转换成日期: class ExpireWidget(AdminDateWidget): def render(self, name, value, attrs=None):

    3热度

    1回答

    我正在做一些文件验证,并且想在将它保存在某个可以执行的地方之前,将它加载到'/ tmp'目录中的同时将一个UploadedFile加载到外部库中。 Django的执行以下操作: Django will write the uploaded file to a temporary file stored in your system's temporary directory. On a Unix-

    2热度

    2回答

    我需要在ModelForm中禁用字段验证。我希望验证不会验证某个字段。当我想用更多的字段返回更复杂的表单时,我有一些情况(AJAX呈现形式)。我将POST传递给表单并呈现新的邮政领域保存。一些新的字段被添加并且它们不能被验证。我通过标志来形成并确认它何时发生。 我应该在一些干净的功能吗?

    1热度

    1回答

    我正在使用Django的ModelForms,并希望对模型和表单进行验证。 {{ form.as_table }} 什么是把验证每个字段的基础上(如表格的适当位置clean_fieldname),并作为一个整体(像形式clean):我使用的渲染形式? 我想最大限度地减少写入的代码量,而不是两次(两种模型和形式)编写相同的验证器。另外,我希望每个字段的验证错误都显示在适当的表单字段上,而不是将所

    29热度

    1回答

    我有一个非常简单的形式: from django import forms class InitialSignupForm(forms.Form): email = forms.EmailField() password = forms.CharField(max_length=255, widget = forms.PasswordInput) password