create
機能がモデル仕様に従って検証されない場合がありますか?Djangoは作成時に検証しませんか?
class Contact(models.Model):
id = models.AutoField(primary_key=True)
firstname = models.CharField(max_length=100, null=False, blank=False)
lastname = models.CharField(max_length=100, null=False, blank=False)
email = models.EmailField(max_length=150, blank=False, null=False)
active = models.BooleanField(default=True)
そして、私は私のview
でこの機能を使用します:ここに私のモデルです
new_contact = Contact.objects.create(firstname=a,
lastname=b,
email=c)
# where a, b, & c are empty strings in request.POST, which shouldn't validate
create
への呼び出しは問題なく通り抜けます。しかし、そうではないはずです。モデルは、必要に応じてこれらのフィールドを指定します。実際に、私が管理パネルに行ってこのオブジェクトを見ると、私はフィールドが必要であることを私に叫ぶので、(変更を加えることなく)保存することはできません。
create
は有効ではありませんか?
どうすれば検証することができますか?
@ e4c5はい、フォームを作成しましたが、それでも問題は解決しませんでした。この時点で、私はただ一つのビューでいくつかのフォームを受け入れています。作成したメインモデルに補助情報を追加するだけで、ユーザーはページの更新を強制されますが、私は好きではありません。 – smilebomb