0
我不關心併發問題。適用於Google App Engine的基本唯一ModelForm字段
這是比較容易建立獨特的表單字段:
from django import forms
class UniqueUserEmailField(forms.CharField):
def clean(self, value):
self.check_uniqueness(super(UniqueUserEmailField, self).clean(value))
def check_uniqueness(self, value):
same_user = users.User.all().filter('email', value).get()
if same_user:
raise forms.ValidationError('%s already_registered' % value)
這樣一個可以在即時添加用戶。編輯現有的用戶是棘手的。該字段不允許保存具有其他用戶電子郵件的用戶。同時它不允許使用相同的電子郵件保存用戶。您使用什麼代碼將唯一性檢查字段放入ModelForm中?