00:00
在这里面呢,我们就得来一个form类了,Plus,我们的谁呢?三。Ask。Form。OK吧,然后这里面是不是from the Jung什么important的forms啊。对吧,来这么一个类,让它记成谁呢?False点我们大小的form母,而这块这次交给大家一个够六的。也就是说这块是个新东西啊,好好听着。之前我们是不是用的是那个大写的form啊,但那个form写的有点low,有点慢,有点慢加呢,它里边就会有更屌的东西给你。啊,这个form呢,它也叫form,也是在这个form类里边叫什么呢?叫做model form。Form的model form,而这个model form,它要比我们的form牛逼的多,为什么它牛逼呢?它是model以及form的结合体。
01:00
OK,它是model和form的结合体,啥意思呢?我的一切验证规则,我forms本来是不是对你做验证的,我的一切验证规则可以通过谁呀?通过你定义model的验证规则直接验证。也就是说,我不再给你定义什么验证规则了。大家想想,我们定义每一个字段的时候,我们是不是在model里边都是叉的括号里边是不是都写了一些验证规则,那如果能用到那些验证规则那。是不是多happy啊,对吧,而且我在这个form里边是不是就不需要再一行一行的去写你了,对吧?并且并且这个要求是啥?要求是你前面字段必须和我表里面的字段一致。你不信,刚才我在写这个list的时候,我把这块写的不就是name phone吗?而我们的表里边,它这个字段也叫name phone以及course。
02:00
说一下啊,这块必须和表示出来一致,你才能用谁。Model,而这个model泡它的用法,我们先看它的用法,看它最后它有多少条。在这里面呢,我也不需要去把你的什么name啊缝啊,一个个拿过来去去什么forms点叉了,我直接给它配置原设置。还记得咱们这个。这个原这吧,好,我在这里面呢,我就直接配个啥model,然后等于什么,我把我的谁导进来,For我们的点models,导入我们的user ask。是不是这个这个这个表啊,对吧,那这个表当中呢,我直接让他的。验证规则,用这个表的验证规则。看什么意思了?你看这个表当中是不是有内负以及cos啊,对吧,而且这里边的验证规则是不是都给他写好了,你没有写内等于处和布拉格等于就代表什么,不等为空。
03:08
是不是这三个现在不能为空啊,并且最大值是不是也给你写上了,对吧,这些验证规则如果够咱们用,咱们就直接就用它就行了。啊。啊。可以,你如果想对他去进行额外的一些,呃,这个这个验证信息,你可以自己在家。啊,你如果说我这些验证规则已经足够你用了,咱们是不是用这个毛头。对吧,当然我们都可以去往给他往上加的啊。然后然后这块我指定你的model,用这个model去做验证,然后呢,还可以指定它字段,而且这个字段咱们是必须要指定的,叫什么呢?叫。
04:03
而这个field,它这个列表,这个列表呢,我们指定的就是它它的哪个字段name还有什么呢。是吧,还什么凤吧?我指定就你这三个字段,也就是说我要用你这个model,用你这三个字段。去这个做做验证,能懂什么意思吗?好,我们仅仅需要去切割的,我仅需要切割的。就够了。OK不OK?你觉得这样的写法牛逼不牛逼?貌似还可以对吧,但是它的功能不止是这些。OK,我说了,它是猫洞和凤的结合体。来看他有多么的牛逼,往后走你就会看到他牛逼之处。首先这个想法会不会对吧?如果说你想要用,你用到了这个模特里面所有的字段了,那怎么去写呢?来给大家同时就说一下子啊,如果你用到了所有的字段。
05:08
所有的字段,那么呢?那么呢,这个我就可以让它等于什么呢引号。你号里面写个什么下划线,下划线看着了。二如果你用到了所有资产,那你就这么想。如果你用到部分字是不是这么写啊,好,那部分字段还有一种写法,如果说我用到了这个部分字段,只用到了。用到了大部分,你比如说我这个表20个字段,我用到了19个,只有一个不用。难道我在这里把19个全写出来吗?OK对吧,他就还有一个什么,还有一个exclude。这个单单词咱们大家已经见过了吧,OK,就是除了谁除了谁,同样的这里边也是个列表,你比如说我除了这个a time是不是都要用啊。
06:02
OK,说明了这种写法和下面这种写法一回事。我不知道,我跟你说了,你听明白了吗?好。所以说你无论是写这种写法,还是写这种写法。都可以,只有你在用到了全字段的时候,你才会干嘛,最下面这个二。OKOK,所以说今天我们大家去写的时候,你在这两个里边挑一个。就可以。OK,通常情况下,他知料少的时候呢,我一般都写的是谁啊,写的field字,而如果说知料多的话,我才会用到这个啥。都行啊都行,看你自己意愿了,好,这样的话呢,我就干嘛。我就给你验证规则。给你卡到我们的model去做验证了。OK不OK啊,好,完事以后和在我们这边的用法是一致的。到这个view里边,到这个view里边的话,同样的我是不是得把我们的model倒过来啊,咱们点models,呃,这个这个photos。
07:07
你们碰就行了,You ask form。对不对,好,接着是不是实力画的啊。是不是等于我们的user ask?这里边还是什么的,你快点。啊,用法是一样的用法,然后呢,我就看到了,如果这个user ask form,它的点is valid,如果它合法,我连甚至连取它都不允许。你看这个model form有多么牛逼,你可以用这个form对象直接保存,就是让这个form保存,就代表着你的model保存。能听明白什么意思。这个form是不是刚才我们所对应的那个类它的一个对象啊,对吧,我让这个form保存,就代表着我对应的那个model也就保存了。
08:01
你想想它有多么的可怕,而这里边我们之前你是不是还得name等于我们谁呢?Use us from.clean data,然后这里边是不是拿到这个内容啊,然后接下来,接下来你是不是噌。是不是等于我们的use ask form,然clean data这里边谁呢?是不是吗?好,再来是不是就是我们的这个。Course是不是等于我们的use ask form.clean the data这里边是不是谁course吧,好,拿到这三以后,接着你是不是去创建一个对象啊,对吧?A等于什么呀?等于我们的us。咱们这里边是不是得把我们的user ask导进来,For我们的点models导入我们的谁呢?User ask这里面是不是就是我们的user ask实例话,然后A点我们的name,是不是等于我们的name a点我们的phone。
09:01
这个等于我们的。中了,然后a.Co是不是等于我们的cos啊,然后最后a.C。你是不是得这么去写,OK?你如果没有用到form,你用到了form,那就必然要这么写,但是我用了form了,这一切OK,重要一行代码搞定。你只要合法了,我直接问谁呀,Use ask for它的点。看到吗?我说了,这个form对象保存就代表了它的model也保存了,因为它是model和form的综合体。我看在这里边呢,我们还有个什么呢,和幂等于除。就让他提交,自动提交。Understand你想想这个东西可怕不?如果你的字段多,那你想我用它的话是比你方母简便的多得多。
10:01
就这么一行代码,你看看他,他已经给你干掉了多少行代码了。能不能明白我在说什么,所以这就是什么,这就是这个model form,它最大的两个特点啊,第一个它可以用我们的model字段进行做验证,第二个form保存代表model保存。什么?验证码。嗯。嗯。可以加呀。嗯,一样的价。对吧,所以说啊,这个这个model用法会了吗。
11:04
当我保存成功以后,那么是不是就代表着我把这个咨询信息人是不是就加进来了,对吧,加进来以后呢,我就干嘛,我就返回我们的response form的jungle,它下边是不是有一个HTP啊。你们碰到我们的谁呢?啊,这一行咱们是不是不要了?看好了吗?好,完了这块直接在里告,这里边还记得咱们当时返回的是啥,是不是啊。啊,我就告诉他一个消息就行了,就给他来个OK,然后呢。Message,再给他来条message,而这个message我们叫什么呢?咨询成功。OKOK,好,Else else的话,我就直接给你返回一个。
12:00
错误的状态就行了,我给你来个咨询示范。哦,这边做什么呀。看好了吗?就这么简单,咱们的什么,咱们的后台view就算搞定了。包哥好,完成以后呢,我就可以到什么在前来应该继续去做啊,在这里边。三叔就碰到了。如果,如果,我觉得扣back除了谁啊,Status。如果等等于我们的谁OK?代表什么意思?代表他是不是成功了,那如果说他咨询成功,那我们是不是首先先给他了他一下吧。对不对,什么呢?直接alo我们的call back,点我们的magic。OK不OK?
13:06
然后啊。如果他没有成功,咱们是不是也去一下这个message啊。OK不OK?原则就是原则,既然他俩都是这个message,那你这个。不管他O不OK,是不是直接A了他下就行了。对吧,但是一会咱们需要给这个后面还要加加内容,所以说呢,咱们现在先分开这么写。OK吧,好,完事以后,完事以后,这是不是代表着咱们的。模板里边阿贾克斯是不是写完了后,View是不是也处理完了?接着是不是就可以验证了。OK,看懂了吗?接着我就走了啊。
14:01
那么验证的话,我们到这边是不是直接。F12。打开我们的口头了,这边刷新。刷新了以后接着我来走,这边是不是填个名字啊,刘华,联系电话随便来课征名,我们随便来一个,我看看,接着点击立即咨询。看好了吗?这个直接就写了个咨询成功。只要你按照这样的步骤去走,他不会错的。啊,通常情况下,而且这个错误消息是不是咱们当刚开始去想这个阿贾克斯欧式,就是给大家讲如何去判出这个错误了。对吧,你去查的时候,先把你F12打开,点到O这边,当你一点击,只要他错这块肯定给你报错。就是你写的问,只要有问题,他就会肯定给你报个错,而且这个错误呢比较好找。对吧。如果报的是500,那肯定是你后台就有问题了啊,如果报的不是500,报的是其他的一些玩意儿,报403,那肯定是你的CF ton有问题。
15:07
是不是这意思啊,如果报告了其他问题,那证明就是你这个公里边写的有问题。然后去查就行了。啊,然后点击确定,点击确定以后,然后呢,我们再去到我们的库里边看一下子,这里边儿到底有没有。刚才咨询的那个内容。找谁呢?找到我们的这个。下边的user ask。看到了吗?这条信息是不是就可以保存起来了,OK,至此呢,咱们这个啥啊,用户咨询功能就完了。OK。能不能验证?呃,后面再说对吧,然后这块这块咱们现在是不是这块是不是已经额勒特他成功了,成功了以后呢,我想干一件事情,那你既然这块成功了,我能不能让它再变成空的呢。
16:14
我说这块是不是内容就变成空的呀,好了,完了以后呢,我这就得来什么,把这三个玩意再给他拿过来。那时候咱们用这个T的时候,我们是不是说如果括号里面不添值代表啥呀。取值,如果天值代表啥?复制它和这个VL用法是一样的啊,如果你成功,那我就分别把你们三个全部制成啥。空就行了,那就这么简单。看懂什么意思了吗?OK,完成以后呢,我们接着再来去做一个刷新,刷新以后名字这次是赵丽颖,联系电话随便来一个,然后课程名随便来一个,然后完了以后呢,点击我们的立即咨询,是不是咨询成功了,好点确定。
17:13
这边是不是又恢复我们的这个。空的了,那么这样的话是不是应该稍微的好一些呀。行,那么至此,咱们这个最基本的这么一个咨询功能就算完事了。OK吧?
我来说两句