Djangoフォームの作成と検証に問題があります。
#views.py:
def create(request):
if request.method == 'POST':
form = CreateDocumentForm(request.POST)
if form.is_valid():
doc = Document.objects.create(name=form.cleaned_data['name'])
#snip
#forms.py:
class CreateDocumentForm(forms.ModelForm):
name = forms.CharField()
def clean_name(self):
cleaned_name = self.cleaned_data['name']
rgx = re.compile('^(\w|-|\.)+$')
if rgx.match(cleaned_name) == None:
raise ValidationError("invalidchars")
return cleaned_name
ロジックは正常に機能していますが、どの種類のVaidationErrorが発生したかを判断する方法がわかりません。また-これはAjaxリクエストによって処理されるため、応答でテンプレートを使用しません。このビューで失敗したもののステータスを取得する必要があります。
どうも