modelforms

forms

from django import forms
from operation.models import UserAsk
import re
class UserAskForm(forms.ModelForm):
     class Meta:
         model =UserAsk
         fields=['name','mobile','course_name']
     def clean_mobile(self):#验证手机号是否合法,clean_mobile必须用这个固定方法方法名

         mobile = self.cleaned_data['mobile']
         REGEX_MOBILE = "^1[358]\d{9}$|^147\d{8}$|^176\d{8}$"
         p = re.compile(REGEX_MOBILE)
         if p.match(mobile):
             return mobile
         else:
             raise forms.ValidationError(u"手机号码非法", code

2views.py

class AddUserAskView(View):
    def post(self,request):
        userask_form=UserAskForm(request.POST)
        if userask_form.is_valid():
            user_ask=userask_form.save(commit=True)#自动保存model数据
            return HttpResponse('{"status":"success"}',content_type="application/json")
        else:
            return HttpResponse('{"status":"fail","msg":"添加出错"}',content_type="application/json")

3html js

<script>
    $(function(){
        $('#jsStayBtn').on('click', function(){#jsStayBtn提交按钮
            $.ajax({
                cache: false,
                type: "POST",
                url:"{% url "org:add_ask" %}",
                data:$('#jsStayForm').serialize(),
                async: true,
                success: function(data) {
                    if(data.status == 'success'){
                        $('#jsStayForm')[0].reset();
                        alert("提交成功")
                    }else if(data.status == 'fail'){
                        $('#jsCompanyTips').html(data.msg)
                    }
                },
            });
        });
    })

</script>

7-8 表单验证我要咨询使用modelform,前提是表单字段,与model的字段相同,而且用modelform 可以自动保存数据方法是

对象.save(commit=True)如views.py

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值