1 00:00:00,000 --> 00:00:00,499 2 00:00:00,499 --> 00:00:03,227 [Music kucheza] 3 00:00:03,227 --> 00:00:04,705 4 00:00:04,705 --> 00:00:05,830 EZRA Zigmond: Hi, kila mtu. 5 00:00:05,830 --> 00:00:08,020 Shukrani kwa kuja nje leo. 6 00:00:08,020 --> 00:00:10,660 Semina hii ni "chatu Mtandao Apps kwa chupa. " 7 00:00:10,660 --> 00:00:14,510 >> Kwa hiyo, mimi nina kwenda kuwa kuzungumza kidogo kuhusu nini 8 00:00:14,510 --> 00:00:17,400 unaweza kutaka kutumia chupa ya kufanya programu mtandao na chatu, kinyume 9 00:00:17,400 --> 00:00:21,556 kwa baadhi mifumo mingine huko nje, kama Django, ambayo ni wengi maalumu. 10 00:00:21,556 --> 00:00:24,330 Subtitle ni "na peewee, "ambayo ni kitu 11 00:00:24,330 --> 00:00:27,250 sisi ni kwenda kuzungumza kuhusu jinsi kuingiliana na database SQL. 12 00:00:27,250 --> 00:00:29,610 Inafanya kweli ni nzuri. 13 00:00:29,610 --> 00:00:32,390 >> Kwa hiyo, hapa tu rundown ya haraka ya nini nataka kwenda juu. 14 00:00:32,390 --> 00:00:35,520 Hivyo, kwanza, tu slide moja kwamba kinaendelea kuwa quickstart, 15 00:00:35,520 --> 00:00:38,530 ambayo ni jinsi ya kupata kila kitu kuanzisha kwenye kompyuta yako. 16 00:00:38,530 --> 00:00:41,760 Mimi nina kwenda kuwa wakiandamana huu juu ya mitaa Mac mashine yangu, 17 00:00:41,760 --> 00:00:45,220 kwa sababu tu hapo ndipo mimi tumefanya hii kabla, mimi nina starehe na ni wengi, 18 00:00:45,220 --> 00:00:48,510 lakini hii ni dhahiri iwezekanavyo juu CD50 IDE. 19 00:00:48,510 --> 00:00:52,050 >> Hivyo, baada ya hapo, nataka kuanzisha kile chupa ni, 20 00:00:52,050 --> 00:00:55,089 na kuwashawishi kwa nini unapaswa matumizi yake katika nafasi ya kwanza. 21 00:00:55,089 --> 00:00:56,880 Kisha, mimi nitakupa haraka mfano wa nini 22 00:00:56,880 --> 00:01:00,550 anaweza kufanya katika chupa, mfano wa haraka ya nini unaweza kufanya katika peewee, 23 00:01:00,550 --> 00:01:05,010 na kisha mimi nitakuonyesha zaidi kamili mfano maombi 24 00:01:05,010 --> 00:01:07,520 kwamba mimi kuweka pamoja kwamba sisi Unaweza kutembea kwa njia ya pamoja. 25 00:01:07,520 --> 00:01:10,040 >> Na kisha hatimaye, katika slide mwisho, nina 26 00:01:10,040 --> 00:01:12,730 rasilimali baadhi kwamba ukiangalia katika online kwa maelezo zaidi. 27 00:01:12,730 --> 00:01:15,560 Hii si kamili mafunzo ya jinsi ya kutumia chupa. 28 00:01:15,560 --> 00:01:18,140 Na mimi itabidi kuondoka matumaini muda kwa ajili ya maswali. 29 00:01:18,140 --> 00:01:21,050 Mtu yeyote kuangalia ndani ya nchi, tu kama, kelele nje katikati 30 00:01:21,050 --> 00:01:22,340 kama una maswali yoyote. 31 00:01:22,340 --> 00:01:27,150 >> Hivyo haraka mambo ufungaji, kama unataka kufuata pamoja, 32 00:01:27,150 --> 00:01:29,240 au kama unataka kupata hii up kwenye mashine yako mwenyewe, 33 00:01:29,240 --> 00:01:32,440 Mimi itakuwa ni ya kutumia Python 2.7.10. 34 00:01:32,440 --> 00:01:35,860 Chupa anafanya kazi kwa Chatu 3, lakini mimi kama 35 00:01:35,860 --> 00:01:38,660 kutumia chatu 2, kwa sababu kuna baadhi fedha chatu kwamba 36 00:01:38,660 --> 00:01:40,910 hawana kazi na 3 bado. 37 00:01:40,910 --> 00:01:44,800 Kama una pip imewekwa, ambayo ni meneja chatu mfuko, 38 00:01:44,800 --> 00:01:48,190 Nadhani kama chatu yako ni zaidi au sawa na 2.7.9, 39 00:01:48,190 --> 00:01:52,220 una hiyo imewekwa tayari, ni super rahisi kufunga vifurushi haya. 40 00:01:52,220 --> 00:01:54,990 >> Unaweza kufanya pip kufunga Chupa, pip kufunga peewee, 41 00:01:54,990 --> 00:01:58,600 Kwa kawaida una kuendesha sudo tu ili ruhusa ya kufanya kazi nje. 42 00:01:58,600 --> 00:02:01,080 Na, kama wewe ni kutumia super toleo la zamani wa chatu, 43 00:02:01,080 --> 00:02:05,100 Mimi kupendekeza kuhuisha chatu yako, au kutumia EasyInstall kufunga pip. 44 00:02:05,100 --> 00:02:09,180 45 00:02:09,180 --> 00:02:11,120 Hivyo, swali la pili ni, ni nini chupa? 46 00:02:11,120 --> 00:02:13,280 Na mimi nadhani, kwanza swali busara mimi najiuliza 47 00:02:13,280 --> 00:02:15,585 kwa muda mrefu ni, ni nini programu mtandao? 48 00:02:15,585 --> 00:02:17,960 Kwa sababu hiyo ni neno kwamba mimi kufikiri ni kutupwa karibu sana 49 00:02:17,960 --> 00:02:19,240 kwamba mimi si kweli kujua. 50 00:02:19,240 --> 00:02:22,340 Na nadhani kwamba bora mfano wa nini programu mtandao ni, 51 00:02:22,340 --> 00:02:26,960 kweli ni CS50 Fedha, ambapo ni kweli si tu tovuti, 52 00:02:26,960 --> 00:02:29,320 lakini ni kitu ambacho inaweza aina ya kiutendaji na. 53 00:02:29,320 --> 00:02:31,736 Kuna akaunti za watumiaji na kila aina ya mambo mbalimbali. 54 00:02:31,736 --> 00:02:35,010 Kwa hiyo, ambapo hasa wewe kuteka mstari kati ya kile ni tovuti, 55 00:02:35,010 --> 00:02:38,780 na ni nini programu ya mtandao, ni aina ya holela, lakini mimi nadhani wazo, 56 00:02:38,780 --> 00:02:42,110 ni kitu zaidi ya tovuti na ni maombi muhimu. 57 00:02:42,110 --> 00:02:46,081 >> Hivyo, chupa ni mfumo wa kufanya programu mtandao kwa kutumia chatu. 58 00:02:46,081 --> 00:02:48,330 Na natumaini ifikapo mwishoni ya hii, mimi itakuwa kuwashawishi 59 00:02:48,330 --> 00:02:52,210 kwamba unaweza kweli kuandika kitu kama CS50 Fedha kwa kutumia Python, ambayo mimi 60 00:02:52,210 --> 00:02:53,950 kama mengi zaidi kuliko PHP, binafsi. 61 00:02:53,950 --> 00:02:57,320 >> Hivyo, chupa ni, wao kuwaita microframework, na ambayo, 62 00:02:57,320 --> 00:02:59,800 maana yake ni sana rahisi, lakini extensible. 63 00:02:59,800 --> 00:03:02,980 Hivyo, ina nini unahitaji tu, lakini kama unataka makala zaidi, 64 00:03:02,980 --> 00:03:04,522 ni rahisi kuwaleta katika. 65 00:03:04,522 --> 00:03:06,480 Lakini kwa sababu tu ni microframework, hana 66 00:03:06,480 --> 00:03:08,960 maana kwamba ni tu kwa ajili ya miradi midogo. 67 00:03:08,960 --> 00:03:12,590 Nina kiungo hapa kwamba anasema kwamba Obama kutumika chupa mwaka 2012 68 00:03:12,590 --> 00:03:14,410 kwa kampeni zake tovuti, ambayo hopefully, 69 00:03:14,410 --> 00:03:16,937 ni kitu cha mhuri. 70 00:03:16,937 --> 00:03:18,770 Lakini jambo lile mimi kweli kama kuhusu chupa 71 00:03:18,770 --> 00:03:22,401 ni kwamba, haina kweli kufanya aina yoyote ya maamuzi kwa ajili yenu. 72 00:03:22,401 --> 00:03:24,150 Tu kwa sababu tuko kuzungumza juu ya programu mtandao, 73 00:03:24,150 --> 00:03:26,940 Mimi na kulinganisha kwa Ruby juu ya Reli na Django, wote wawili ambao 74 00:03:26,940 --> 00:03:30,450 ni mfumo wa kubwa, lakini wawili hao kufanya mawazo 75 00:03:30,450 --> 00:03:33,600 kuhusu jinsi gani unataka kuingiliana na database, 76 00:03:33,600 --> 00:03:36,900 jinsi gani unataka kuwasilisha yako maoni, na wao uko dhahiri 77 00:03:36,900 --> 00:03:38,850 masuala nzuri ya jambo hilo. 78 00:03:38,850 --> 00:03:41,490 >> Kwa mfano, Ruby juu ya reli ina mfumo huu kazi rekodi, 79 00:03:41,490 --> 00:03:43,100 ambayo kwa kweli ni nzuri njia ya kiutendaji na data, 80 00:03:43,100 --> 00:03:45,960 lakini kama unataka kutumia Ruby juu Reli, wewe ni aina ya amefungwa katika hiyo. 81 00:03:45,960 --> 00:03:47,835 Lakini pamoja na chupa, kama mimi itabidi kuonyesha kwa peewee, 82 00:03:47,835 --> 00:03:49,830 unaweza kutumia aina yoyote ya database unataka, 83 00:03:49,830 --> 00:03:53,980 na unaweza tu kuvuta kwamba katika kama ugani katika chupa. 84 00:03:53,980 --> 00:03:56,350 >> Hivyo ndiyo sababu mimi kwa kweli kama chupa, ni kwamba 85 00:03:56,350 --> 00:04:01,170 haina kufanya mawazo kwa ajili yenu kulingana na mambo huna haja kweli. 86 00:04:01,170 --> 00:04:04,440 >> Hivyo, kwa nini matumizi ya chupa? 87 00:04:04,440 --> 00:04:08,230 Faida ni, ni tu ina kweli makala ya msingi 88 00:04:08,230 --> 00:04:09,420 kujengwa ndani yake ambayo unahitaji. 89 00:04:09,420 --> 00:04:11,980 Hivyo, huna kuwa na wasiwasi kuhusu kuelewa rundo zima la mambo 90 00:04:11,980 --> 00:04:13,175 kwamba huna kweli wanahitaji. 91 00:04:13,175 --> 00:04:15,060 Wewe huna kuwa na wasiwasi kuhusu kugeuka mbali makala 92 00:04:15,060 --> 00:04:16,620 kwamba huna kweli wanahitaji. 93 00:04:16,620 --> 00:04:21,082 >> Na, kama nilivyoeleza, ni super rahisi kuongeza katika upanuzi wa mambo 94 00:04:21,082 --> 00:04:21,790 kwamba huna haja. 95 00:04:21,790 --> 00:04:24,700 Baadhi yao, chupa ina msaada wao wenyewe kwa ajili yake. 96 00:04:24,700 --> 00:04:28,230 Hivyo kuna kitu kinachoitwa chupa admin, ambayo vioo kwamba admin 97 00:04:28,230 --> 00:04:32,060 jopo kwamba Django hutoa, ambayo inatoa nzuri Visual njia 98 00:04:32,060 --> 00:04:33,405 kusimamia tovuti yako. 99 00:04:33,405 --> 00:04:35,280 Lakini tena, kama wewe ni kufanya kitu rahisi, 100 00:04:35,280 --> 00:04:39,550 pengine hawana haja admin kubwa jopo, hivyo nadhani hiyo ni super nzuri. 101 00:04:39,550 --> 00:04:45,940 Na hasara ni kwamba una uwezo kidogo nje ya boksi. 102 00:04:45,940 --> 00:04:49,660 Hivyo, wakati wewe kwanza kufungua chupa, na katika mpango wako chatu, 103 00:04:49,660 --> 00:04:53,150 wewe tu aina kutoka chupa kuagiza *, au chochote, 104 00:04:53,150 --> 00:04:55,957 huna hasa kupata yote ya Makala unaweza kutaka. 105 00:04:55,957 --> 00:04:58,540 Na hivyo kuwa na zaidi waziwazi orodha makala unataka. 106 00:04:58,540 --> 00:05:01,990 Hivyo hiyo ni moja hasara, lakini mimi wanadhani kuwa kwa ajili ya kujenga ndogo mtandao 107 00:05:01,990 --> 00:05:04,782 programu kama mimi nina kwenda kuwa kuonyesha wewe, hiyo ni kweli si tatizo. 108 00:05:04,782 --> 00:05:07,281 Na nini jambo la mwisho ni anapaswa kusema, ambayo ni typo, 109 00:05:07,281 --> 00:05:10,240 ni kwamba kuna watu chini sanifu mikataba kwa jinsi ya kutumia chupa, 110 00:05:10,240 --> 00:05:12,400 kwa sababu tu kuna si kama walio wengi watu kuitumia kitaaluma 111 00:05:12,400 --> 00:05:13,191 ikilinganishwa na Django. 112 00:05:13,191 --> 00:05:16,380 Hivyo, kama wewe kuangalia kitu kama, "jinsi gani mimi kufanya x" katika Django, 113 00:05:16,380 --> 00:05:18,190 pengine utasikia kupata hiyo. 114 00:05:18,190 --> 00:05:20,260 >> Kuna kubuni nzuri ruwaza unaweza kutumia, 115 00:05:20,260 --> 00:05:22,660 lakini kwa chupa, ni aina ya kwenda njia yako mwenyewe, 116 00:05:22,660 --> 00:05:24,850 tu kwa sababu ni pretty ndogo maktaba. 117 00:05:24,850 --> 00:05:27,100 Basi hizo hasara, lakini nadhani 118 00:05:27,100 --> 00:05:29,370 kwamba bado ni maktaba nzuri ya kutumia. 119 00:05:29,370 --> 00:05:31,909 >> Basi hebu tu kuruka haki katika chupa. 120 00:05:31,909 --> 00:05:34,200 Hii ni dhahiri si kwenda kuwa mafunzo kamili, 121 00:05:34,200 --> 00:05:37,480 lakini ni kukupa wazo ya jinsi ya kuunda vitu, 122 00:05:37,480 --> 00:05:40,790 na hivyo kujisikia vizuri kwenda mbali na kuangalia nyaraka 123 00:05:40,790 --> 00:05:42,570 na kutafuta zaidi. 124 00:05:42,570 --> 00:05:48,500 >> Hivyo, napenda kufungua kweli rahisi mfano kwa mara ya kwanza, 125 00:05:48,500 --> 00:05:50,737 na kuonyesha nini kwamba Inaonekana kama, na kisha tutaweza 126 00:05:50,737 --> 00:05:52,070 kuvunja chini kidogo zaidi. 127 00:05:52,070 --> 00:05:56,160 >> Hivyo hii hapa, napenda kupata mbio. 128 00:05:56,160 --> 00:06:06,800 129 00:06:06,800 --> 00:06:09,750 Kwa hiyo, mimi sasa wana maombi yangu mbio. 130 00:06:09,750 --> 00:06:15,910 Mimi nina kwenda kufungua Safari, na ni mbio juu ya mwenyeji wangu mitaa. 131 00:06:15,910 --> 00:06:19,360 Hivyo mimi nina kwenda tu kufanya hili kubwa. 132 00:06:19,360 --> 00:06:23,960 Lakini localhost: 5000 133 00:06:23,960 --> 00:06:27,650 >> Na hivyo, hivi sasa, kila hii haina ni, wakati wewe kutembelea tovuti, 134 00:06:27,650 --> 00:06:31,490 Prints nje "Habari chupa," ambayo si super muhimu, 135 00:06:31,490 --> 00:06:34,630 lakini nadhani ni baridi kwamba katika hii file kidogo hapa, 136 00:06:34,630 --> 00:06:37,390 tuna mtandao wa kompyuta mbio kwamba ni uchapishaji nje kitu. 137 00:06:37,390 --> 00:06:40,500 Hivyo, hebu kweli kuangalia katika kanuni kwa ajili ya pili, 138 00:06:40,500 --> 00:06:43,080 na kuvunja chini kidogo. 139 00:06:43,080 --> 00:06:45,260 Ni ukubwa nzuri kwa kila mtu hapa? 140 00:06:45,260 --> 00:06:51,560 >> Hivyo, pengine, wewe ni kiasi fulani starehe kwa kutumia chatu. 141 00:06:51,560 --> 00:06:55,820 Mimi nina kuchukua kwamba tunaweza kuangalia chatu na kusoma kwa njia hiyo. 142 00:06:55,820 --> 00:06:59,290 Kama una maswali yoyote kuhusu chochote, siwezi pia kwenda juu kwamba. 143 00:06:59,290 --> 00:07:03,974 >> Hivyo mstari wa kwanza, kutoka chupa, sisi kuagiza, chupa na mji mkuu wa "F" 144 00:07:03,974 --> 00:07:06,140 ambayo ni aina ya yote vipengele muhimu kwamba unahitaji. 145 00:07:06,140 --> 00:07:08,890 Kila wewe ni kuandika faili na kutumia chupa, 146 00:07:08,890 --> 00:07:12,120 wewe ni kwenda unataka kuagiza kwamba, sababu tu kwamba ina mambo yote kuu. 147 00:07:12,120 --> 00:07:15,400 Jambo la pili sisi kufanya, ni sisi wito huu chupa kazi, tu 148 00:07:15,400 --> 00:07:19,270 kujenga programu kitu, na uko Daima kwenda kutaka kufanya hivyo. 149 00:07:19,270 --> 00:07:25,960 >> Na kisha, kuruka chini kwa chini kwa haraka, sehemu hii hapa ni, 150 00:07:25,960 --> 00:07:28,760 'if_name _ == "_ main_"' ambayo ni aina ya chatu mkataba. 151 00:07:28,760 --> 00:07:32,750 Hivyo hii tu kutekeleza kama wewe kukimbia faili hii moja kwa moja kwa kutumia chatu. 152 00:07:32,750 --> 00:07:36,040 Kisha, tunatoa wito app.run, ambayo itakuwa kweli kuanza programu wanakwenda. 153 00:07:36,040 --> 00:07:39,570 >> Hivyo, hiyo ni muundo kuu kwamba itabidi katika maombi yoyote chupa, 154 00:07:39,570 --> 00:07:48,550 ni utakuwa na hii programu = Flask (_name_), na kisha app.run. 155 00:07:48,550 --> 00:07:54,940 >> Kwa hiyo, mambo mawili ambayo nina humu, ni kile tunachokiita njia. 156 00:07:54,940 --> 00:07:57,150 Kwa hiyo, hebu majadiliano juu ya routing kidogo zaidi. 157 00:07:57,150 --> 00:07:58,430 Mimi itabidi kurudi nyuma na slide. 158 00:07:58,430 --> 00:08:02,540 >> Hivyo kimsingi zaidi dhana katika chupa ni routing. 159 00:08:02,540 --> 00:08:06,750 Na ni wazo kuwa wewe kuwapa kazi katika Python 160 00:08:06,750 --> 00:08:11,280 Hasa kwa anwani kwenye mtandao ukurasa wako. 161 00:08:11,280 --> 00:08:13,930 Hivyo, wakati wowote unataka kujenga njia mpya, 162 00:08:13,930 --> 00:08:16,500 wewe kutumia hii @ app.route kazi decorator. 163 00:08:16,500 --> 00:08:19,770 Hivyo, kama wewe ni unfamiliar na kazi decorators katika Python, 164 00:08:19,770 --> 00:08:24,160 ni dhana hii kwamba inakuwezesha kuchukua kazi 165 00:08:24,160 --> 00:08:26,800 na surround yake na kitu kingine. 166 00:08:26,800 --> 00:08:30,140 >> Hivyo kweli, nini decorator hii haina, ni kwamba inachukua kazi chini yake, 167 00:08:30,140 --> 00:08:33,409 na inaongeza habari zaidi nyingine, ila tu kile chupa kweli 168 00:08:33,409 --> 00:08:37,480 haina kufanya kutokea ni si super muhimu, lakini nini ni muhimu, 169 00:08:37,480 --> 00:08:43,640 ni kwamba kabla ya njia, wewe kuweka hii @ app.route, na kisha 170 00:08:43,640 --> 00:08:46,480 pepe ya njia, hivyo kufyeka ni nini sisi 171 00:08:46,480 --> 00:08:48,360 aliona wakati sisi tu kufungua ukurasa wa mtandao. 172 00:08:48,360 --> 00:08:49,580 Hivyo hiyo ni Mzee. 173 00:08:49,580 --> 00:08:51,037 Ni tu njia kufyeka. 174 00:08:51,037 --> 00:08:52,370 Na kisha una kazi hii. 175 00:08:52,370 --> 00:08:54,453 Jina la kazi inaweza kuwa chochote unataka. 176 00:08:54,453 --> 00:08:56,930 Ni hana na lazima kufanya na njia. 177 00:08:56,930 --> 00:08:59,440 Na kisha, chochote kurudi kazi wa, 178 00:08:59,440 --> 00:09:01,730 kazi lazima kurudi kamba. 179 00:09:01,730 --> 00:09:03,740 Na kamba ambayo yanaweza vyenye HTML au kitu chochote, 180 00:09:03,740 --> 00:09:06,920 na kwamba ni nini hasa kupata alirejea mtandao browser yako kama HTML, 181 00:09:06,920 --> 00:09:08,200 na itakuwa kutoa hiyo. 182 00:09:08,200 --> 00:09:12,030 >> Hivyo hii ni sawa kificho hiyo ilikuwa kutokana na mfano 183 00:09:12,030 --> 00:09:16,430 kwamba mimi tu mbio, hivyo wakati sisi kutembelea kufyeka, ni wito kazi Hello World, ambayo 184 00:09:16,430 --> 00:09:20,470 tu anarudi kamba, Habari chupa, na kwamba anapata kuchapishwa kwenye screen. 185 00:09:20,470 --> 00:09:27,290 >> Hivyo kuna mfano mwingine, ambayo ni, wakati wa ziara / hello, 186 00:09:27,290 --> 00:09:30,370 Prints nje Habari Neno, ambalo lazima kweli kusema, Hello World, 187 00:09:30,370 --> 00:09:32,010 lakini hebu kujifanya kuwa alikuwa kukusudia. 188 00:09:32,010 --> 00:09:35,140 Basi hebu vuta kuwa hadi halisi haraka. 189 00:09:35,140 --> 00:09:41,290 >> Hivyo kama wewe kwenda kwenda kwenye localhost / hello, itakuwa sasa magazeti kitu kingine. 190 00:09:41,290 --> 00:09:45,680 Hivyo hiyo ni mfano tu wa haraka wa jinsi unaweza kuunda njia mbili tofauti. 191 00:09:45,680 --> 00:09:50,630 >> Kwa hiyo, hadi sasa hii si super muhimu, kuna si mengi yote unaweza kufanya, 192 00:09:50,630 --> 00:09:55,360 unaweza tu kufanya yote kwa kuwa kurasa tofauti HTML, 193 00:09:55,360 --> 00:09:58,000 na wakati wa ziara hasa ukurasa tu mizigo ukurasa. 194 00:09:58,000 --> 00:10:00,864 Basi hebu angalia baadhi zaidi mambo muhimu unaweza kufanya. 195 00:10:00,864 --> 00:10:03,780 Kwa hiyo, jambo moja kwamba unaweza kuwa niliona katika mfano kwamba mimi vunjwa 196 00:10:03,780 --> 00:10:07,160 up, ni kwamba nilikuwa app.run (utatuzi = Kweli). 197 00:10:07,160 --> 00:10:09,580 Na hivyo, jambo hili Hoja utatuzi gani, ni 198 00:10:09,580 --> 00:10:14,600 kwamba wakati wewe kukimbia mtandao wa kompyuta yako, wakati uko katika maombi yako, 199 00:10:14,600 --> 00:10:18,100 kama mabadiliko ya faili, itakuwa moja kwa moja upya kompyuta. 200 00:10:18,100 --> 00:10:21,160 >> Na hivyo si kweli kuwa kwa kuanzisha upya chatu, ambayo ni super muhimu. 201 00:10:21,160 --> 00:10:24,020 Siwezi kuonyesha kwamba. 202 00:10:24,020 --> 00:10:26,960 Hebu vuta hadi kificho wangu kwa typo ndani yake, 203 00:10:26,960 --> 00:10:30,420 na kujifanya kuwa typo ilikuwa kuweka huko makusudi kwa madhumuni mazingatio. 204 00:10:30,420 --> 00:10:31,625 Basi hebu kuongeza hii nyuma katika. 205 00:10:31,625 --> 00:10:33,140 Hivyo sasa anasema Hello World. 206 00:10:33,140 --> 00:10:34,410 Mimi atayaokoa. 207 00:10:34,410 --> 00:10:36,540 Na kama sisi kuvuta nyuma hadi wastaafu, utasikia 208 00:10:36,540 --> 00:10:39,520 kusema kwamba ni kuanzisha, kwa sababu wanaona mabadiliko, 209 00:10:39,520 --> 00:10:43,620 na hivyo sasa wakati sisi upya ukurasa huu, itakuwa magazeti nje kitu sahihi. 210 00:10:43,620 --> 00:10:45,630 >> Hivyo utatuzi ni super muhimu kwa ajili hiyo. 211 00:10:45,630 --> 00:10:48,740 Pia, kama una aina ya ajali, hivyo 212 00:10:48,740 --> 00:10:54,370 napenda kufanya ajali hii ya maombi kwa kuwa ni asirudi kamba. 213 00:10:54,370 --> 00:10:57,540 Hivyo, hebu tu kuwa ni kurudi Hakuna kwa sababu fulani. 214 00:10:57,540 --> 00:11:00,810 Na kisha wakati mimi kutembelea hii ukurasa, itakuwa tu ajali, 215 00:11:00,810 --> 00:11:04,465 lakini seva haina tu ajali, ni kweli anatoa nyuma super muhimu 216 00:11:04,465 --> 00:11:06,490 kuwaeleza ya kila kitu ambacho potoka. 217 00:11:06,490 --> 00:11:10,050 Na nini ni nzuri, ni kwamba katika hatua yoyote katika hii kuwaeleza nyuma, 218 00:11:10,050 --> 00:11:14,260 unaweza kufungua shirikishi shell hapa, na aina ya magazeti nje nini 219 00:11:14,260 --> 00:11:17,780 vigezo unataka kuangalia. 220 00:11:17,780 --> 00:11:21,054 >> Na hivyo debugging ni kweli muhimu kwa ajili ya kuhesabia 221 00:11:21,054 --> 00:11:23,470 kinachoendelea na yako server, badala ya kuona tu 222 00:11:23,470 --> 00:11:28,201 kitu katika PHP kama 500 ndani hitilafu ya seva, ambayo ni super maana. 223 00:11:28,201 --> 00:11:30,700 Jambo moja kuwa na ufahamu wa, ni kwamba kama wewe kuweka programu yako online 224 00:11:30,700 --> 00:11:34,260 hivyo ni wazi kwa umma, wewe kamwe wanataka kuondoka Debug mode juu, 225 00:11:34,260 --> 00:11:37,320 kwa sababu watu wanaweza kweli kutumia console kwamba mimi 226 00:11:37,320 --> 00:11:39,150 ilionyesha wewe kutekeleza kificho holela. 227 00:11:39,150 --> 00:11:42,120 >> Ili waweze magazeti nje kama yoyote codes siri una huko, 228 00:11:42,120 --> 00:11:44,755 wanaweza kuangalia hasa jinsi tovuti yako ni kazi. 229 00:11:44,755 --> 00:11:46,630 Hivyo ni muhimu kweli kweli kwa ajili ya kupima, lakini daima 230 00:11:46,630 --> 00:11:50,090 kuhakikisha kuchukua nje kabla kuchapisha kitu chochote online. 231 00:11:50,090 --> 00:11:56,640 >> Hivyo wakati wewe ni kutumia kitu kama PHP, kuna wazo hili 232 00:11:56,640 --> 00:11:58,920 uweze kupita habari kati ya kurasa za mtandao 233 00:11:58,920 --> 00:12:03,620 kwa kuweka maelezo kwa kweli katika URL, ambayo ni ombi GET, 234 00:12:03,620 --> 00:12:07,490 lakini katika chupa, unaweza kweli kufanya kitu aina ya kama kwamba, 235 00:12:07,490 --> 00:12:10,590 kwa kuwa njia ambayo ina kutofautiana kama sehemu yake. 236 00:12:10,590 --> 00:12:14,090 >> Hivyo kama wewe kuangalia hii mfano kwenye screen hapa, 237 00:12:14,090 --> 00:12:19,930 tuna njia hiyo ni ('/ hodi /'), na hivyo, kama wewe kutembelea 238 00:12:19,930 --> 00:12:23,790 / hodi / kitu fulani, kitu ambacho ni kwenda kweli kupata kujazwa 239 00:12:23,790 --> 00:12:25,490 ndani ya jina kutofautiana. 240 00:12:25,490 --> 00:12:27,850 Na taarifa kwamba kazi kuja na njia hiyo 241 00:12:27,850 --> 00:12:31,302 ina kuchukua katika vigezo jina, hivyo kwamba itakuwa kweli 242 00:12:31,302 --> 00:12:32,510 kupata kupita katika kazi. 243 00:12:32,510 --> 00:12:34,190 >> Na kisha, mara moja uko ndani ya kazi kwamba, 244 00:12:34,190 --> 00:12:36,420 unaweza kutibu kwamba kama kawaida chatu kutofautiana, 245 00:12:36,420 --> 00:12:39,650 na hivyo basi, itakuwa magazeti nje Habari, na ni 246 00:12:39,650 --> 00:12:42,000 kujaza katika jina kwa kutumia baadhi kamba formatting. 247 00:12:42,000 --> 00:12:48,060 >> Hivyo kwa kuongeza sehemu kutofautiana kwa routing, matumizi pembe mabano kuashiria. 248 00:12:48,060 --> 00:12:51,220 Na kwa hiari, unaweza kutumia kile kinachoitwa kubadilisha fedha. 249 00:12:51,220 --> 00:12:56,840 Na hivyo, kama wewe kuweka hii Dokezo kwa matumbo, 250 00:12:56,840 --> 00:13:00,015 unaweza kutaja kwamba ni int, au kuelea, au njia, 251 00:13:00,015 --> 00:13:01,640 na itakuwa moja kwa moja kubadili hilo. 252 00:13:01,640 --> 00:13:05,130 Unaweza pia kufanya uongofu ndani ya kazi chatu, 253 00:13:05,130 --> 00:13:09,710 tu kwa kutumia kutupwa, lakini wakati mwingine kama unataka kuhakikisha kwamba ni int, 254 00:13:09,710 --> 00:13:12,080 unaweza kuweka kwamba kubadilika utawala katika huko. 255 00:13:12,080 --> 00:13:15,930 >> Basi hebu vuta hadi mfano ya baadhi ya sheria kutofautiana. 256 00:13:15,930 --> 00:13:21,480 Hivyo hapa, hii ina sawa ya msingi muundo na kutoka chupa kuagiza 257 00:13:21,480 --> 00:13:25,030 Chupa, programu = chupa (_name_), na kisha ni mbio mwishoni. 258 00:13:25,030 --> 00:13:28,050 Tuna hizi mbili tofauti njia kutofautiana hapa. 259 00:13:28,050 --> 00:13:29,900 Na moja ya kwanza, ni moja kwamba mimi ilionyesha 260 00:13:29,900 --> 00:13:34,230 katika slide, ambayo ilikuwa kwamba tu inachukua katika jina kamba 261 00:13:34,230 --> 00:13:35,650 na itakuwa magazeti nje Hello, Jina. 262 00:13:35,650 --> 00:13:41,410 >> Na kisha, pili mtu anatumia kubadilika. 263 00:13:41,410 --> 00:13:44,690 Hivyo hii moja kwa moja kubadili kwa int, na kisha mara mbili int, 264 00:13:44,690 --> 00:13:46,150 na magazeti kwamba nje. 265 00:13:46,150 --> 00:13:48,220 Na, hatufanyi aina yoyote ya kubadilika ndani yake 266 00:13:48,220 --> 00:13:49,594 kwa sababu chupa inachukua huduma ya kwamba. 267 00:13:49,594 --> 00:13:53,181 Basi hebu kupata hii kukimbia. 268 00:13:53,181 --> 00:13:54,930 Wakati una chupa maombi mbio, 269 00:13:54,930 --> 00:13:58,440 unaweza Kudhibiti-C nje yake kuacha server mbio. 270 00:13:58,440 --> 00:14:02,420 Na kisha mimi inakwenda vigezo. 271 00:14:02,420 --> 00:14:11,740 >> Basi hebu kwenda kwa localhost / hodi / ezra na hopefully, hii kusema hello kwangu. 272 00:14:11,740 --> 00:14:14,530 273 00:14:14,530 --> 00:14:20,310 >> Hivyo alichukua kwa jina langu, katika kutofautiana Njia, ukaijaza katika hapa. 274 00:14:20,310 --> 00:14:23,950 Hivyo mimi itabidi pia kuonyesha haraka Mfano wa mara dufu. 275 00:14:23,950 --> 00:14:28,600 Hivyo kama wewe kwenda / mbili / 3, itakuwa magazeti nje 6. 276 00:14:28,600 --> 00:14:31,440 Hivyo hii alichukua huduma ya kubadilika kwa ajili yetu. 277 00:14:31,440 --> 00:14:34,190 >> Hivyo unaweza pia kufanya hivyo kwa kuelea, na kitu maalum, 278 00:14:34,190 --> 00:14:37,530 kama unahitaji kutaja kitu kama njia, ambayo inakuwezesha ni kukubali mikwaju, 279 00:14:37,530 --> 00:14:39,155 lakini kwamba haipaswi kawaida kuwa suala hilo. 280 00:14:39,155 --> 00:14:41,480 281 00:14:41,480 --> 00:14:43,820 Hadi sasa tuna, bado wana tu imekuwa kurudi 282 00:14:43,820 --> 00:14:46,320 masharti, ambayo si ya kuvutia sana. 283 00:14:46,320 --> 00:14:48,730 >> Tunaweza kweli kurudi halisi HTML kamba. 284 00:14:48,730 --> 00:14:54,322 Hivyo katika kanuni tunaweza kuingiza kitu kama b-tag kufanya hivyo ujasiri, 285 00:14:54,322 --> 00:14:56,030 lakini wengi wakati wewe si kweli wanataka 286 00:14:56,030 --> 00:14:58,420 kuwa kuandika HTML code katika Python kanuni yako. 287 00:14:58,420 --> 00:15:01,940 Ni kweli anapata messy, na siyo wakati mzuri. 288 00:15:01,940 --> 00:15:06,430 >> Chupa inaruhusu sisi kutenganisha HTML katika kile kinachoitwa Kigezo, 289 00:15:06,430 --> 00:15:09,467 na hivyo kama wewe ni kufikiri katika suala la mfano MVC 290 00:15:09,467 --> 00:15:11,550 kwamba wewe ni ukoo na, hopefully, kutokana na kufanya kazi 291 00:15:11,550 --> 00:15:15,520 kwa CS50 Fedha kidogo, unaweza kufikiria mafaili chatu 292 00:15:15,520 --> 00:15:19,430 kuwa ni zaidi ya Mdhibiti, ambapo wao ni mazungumzo na chochote 293 00:15:19,430 --> 00:15:20,970 data mfano unaweza kuwa. 294 00:15:20,970 --> 00:15:24,900 >> Na kisha wao ni wito nje kwa Maoni na kupita maelezo kwa kuwa View 295 00:15:24,900 --> 00:15:28,120 kujaza habari katika HTML kwamba inahitaji. 296 00:15:28,120 --> 00:15:30,490 Na nini sisi kuwaita wale Maoni Matukio ni katika darasa. 297 00:15:30,490 --> 00:15:35,280 >> Hivyo chupa anatumia chatu mwingine moduli kwamba itakuwa moja kwa moja 298 00:15:35,280 --> 00:15:38,620 kufunga wakati wewe PIP kufunga Chupa inayoitwa Jinja, ambayo 299 00:15:38,620 --> 00:15:40,885 inakuwezesha kuongeza hizi annotations kwa HTML 300 00:15:40,885 --> 00:15:45,140 kwamba unaweza kuona kwenye screen, ambayo inakuwezesha kuweka katika mambo kama conditionals, 301 00:15:45,140 --> 00:15:47,230 na loops katika HTML. 302 00:15:47,230 --> 00:15:51,140 >> Hivyo inaonekana kidogo kama jinsi wanaweza kutumia PHP ndani ya faili HTML, 303 00:15:51,140 --> 00:15:57,380 lakini hili ni jambo jema wakati chupa server mtumishi up faili HTML, 304 00:15:57,380 --> 00:16:01,610 itakuwa kukimbia injini huu templating na Hazrat kupitia huu na kujaza mambo katika. 305 00:16:01,610 --> 00:16:06,650 Hivyo chupa ina render_template kazi uweze kuona chini hapa. 306 00:16:06,650 --> 00:16:14,300 Na hivyo wakati wewe kutembelea ukurasa huu, ni ingekuwa atatoa hii hello.html Kigezo, 307 00:16:14,300 --> 00:16:16,407 na kisha kujaza ukurasa huu HTML. 308 00:16:16,407 --> 00:16:18,990 Basi hebu kukimbia tu halisi huu haraka, na kuona nini inaonekana kama, 309 00:16:18,990 --> 00:16:21,198 na kisha nitakwenda kupitia kidogo kwa undani zaidi. 310 00:16:21,198 --> 00:16:25,380 311 00:16:25,380 --> 00:16:30,260 Hivyo, Matukio yako ni kwenda kwenda katika Matukio folder. 312 00:16:30,260 --> 00:16:33,980 Itakuwa moja kwa moja kuangalia ndani ya Matukio folder kwa kuwa Kigezo. 313 00:16:33,980 --> 00:16:35,615 Basi hebu kufungua hili. 314 00:16:35,615 --> 00:16:47,350 315 00:16:47,350 --> 00:16:50,005 Kwa hiyo, mimi itabidi kukimbia Templating mfano. 316 00:16:50,005 --> 00:16:52,820 317 00:16:52,820 --> 00:17:03,660 >> Hivyo kama mimi kwenda / hodi / ezra, ina hii ya kutisha, 318 00:17:03,660 --> 00:17:05,930 obnoxious marquee tag kwamba mimi kuweka katika. 319 00:17:05,930 --> 00:17:08,050 Nzuri sana, nguvu sana. 320 00:17:08,050 --> 00:17:09,349 Mimi ni shabiki mkubwa. 321 00:17:09,349 --> 00:17:13,900 Lakini kile kinachotokea kama Mimi tu kwenda, / hodi? 322 00:17:13,900 --> 00:17:15,220 Hivyo tu anasema Hello World. 323 00:17:15,220 --> 00:17:17,678 Sikuwa kupita jina, na ukaijaza ni moja kwa moja. 324 00:17:17,678 --> 00:17:22,050 Basi hebu angalia jinsi gani alifanya hivyo, na jinsi tunaweza kujikwamua kwamba marquee labda. 325 00:17:22,050 --> 00:17:26,240 >> Hivyo hapa, hii ni aina ya mfano kuvutia ya, 326 00:17:26,240 --> 00:17:29,101 kama wewe ni ukoo na jinsi ya kubadili kauli kazi katika lugha. 327 00:17:29,101 --> 00:17:31,350 Kusema hii ni aina ya kama, aina ya kuanguka kwa njia ya, 328 00:17:31,350 --> 00:17:34,266 ambapo kwa kweli zinatokana mbili njia tofauti tofauti kwa kazi moja. 329 00:17:34,266 --> 00:17:41,190 Hivyo sisi ambatisha / hodi njia na / hodi / jina njia ya Habari, 330 00:17:41,190 --> 00:17:45,130 na sisi kutaja using-- chatu inakuwezesha kutaja chaguo-msingi kazi arguments-- 331 00:17:45,130 --> 00:17:48,300 hivyo kama hakuna jina, hivyo kama sisi kwenda tu / hello, 332 00:17:48,300 --> 00:17:50,680 itakuwa moja kwa moja kuchuja kwa jina ni sawa na Hamna. 333 00:17:50,680 --> 00:17:55,010 >> Hivyo basi, sisi atatoa Kigezo na jina = jina, 334 00:17:55,010 --> 00:17:59,510 hivyo itakuwa kupita katika jina parameter sawa na hii parameter jina kazi, 335 00:17:59,510 --> 00:18:00,730 ndani ya Kigezo. 336 00:18:00,730 --> 00:18:04,040 Hiyo bado haina kueleza jinsi ni kuamua kama magazeti Hello World, 337 00:18:04,040 --> 00:18:05,100 au magazeti jina langu. 338 00:18:05,100 --> 00:18:08,050 Basi hebu kweli kuangalia ndani ya Kigezo yenyewe, 339 00:18:08,050 --> 00:18:11,610 na kuona ni wapi kwamba anakuja kutoka. 340 00:18:11,610 --> 00:18:18,680 >> Kwa hiyo, ndani ya Kigezo hii, sisi kweli kuwa baadhi mantiki masharti, 341 00:18:18,680 --> 00:18:20,580 ambayo baadhi ya watu wanasema, wewe kweli 342 00:18:20,580 --> 00:18:23,730 haipaswi kuwa na mengi ya masharti mantiki ndani ya Kigezo yako yenyewe. 343 00:18:23,730 --> 00:18:26,310 Ni lazima kuwa zaidi ndani ya Mdhibiti, lakini kwa mfano huu 344 00:18:26,310 --> 00:18:27,476 ni kitu pretty ndogo. 345 00:18:27,476 --> 00:18:31,060 Hivyo hapa, sisi kuangalia, kama jina, hivyo kama jina si sawa na Hakuna, 346 00:18:31,060 --> 00:18:33,130 kama jina ni kweli kupita katika, basi sisi 347 00:18:33,130 --> 00:18:36,210 kusema Hello, Jina na kichwa na marquee, 348 00:18:36,210 --> 00:18:41,490 HTML haya yote ya kawaida, vinginevyo, sisi magazeti nje Hello, Dunia tu kama kawaida. 349 00:18:41,490 --> 00:18:45,820 Hivyo mambo kadhaa taarifa hapa kuhusu jinsi muundo templating, 350 00:18:45,820 --> 00:18:49,110 ni kwamba, yote haya kauli masharti, 351 00:18:49,110 --> 00:18:54,475 aina ya kama jinsi sisi PHP ni wakati unataka kuingiza baadhi PHP, 352 00:18:54,475 --> 00:18:58,380 matumizi chini-kuliko swali alama, ni aina ya sawa hapa 353 00:18:58,380 --> 00:19:00,140 na {%. 354 00:19:00,140 --> 00:19:02,130 >> Hivyo hapa, tuna kificho wetu masharti. 355 00:19:02,130 --> 00:19:05,920 Na kisha, wakati wewe kweli unataka halisi kutathmini kitu, na magazeti 356 00:19:05,920 --> 00:19:08,710 hivyo nje screen, kutumia braces mbili. 357 00:19:08,710 --> 00:19:12,310 Hivyo hapa ni braces mara mbili, na kisha sisi kutaja jina, 358 00:19:12,310 --> 00:19:15,500 hivyo ndani ya kwamba, itakuwa kutathmini kwa jina kutofautiana, ambayo 359 00:19:15,500 --> 00:19:18,860 ilipitishwa katika kutoka atatoa template kazi, 360 00:19:18,860 --> 00:19:21,484 badala ya uchapishaji tu nje, kama sisi got kuondoa hizi, 361 00:19:21,484 --> 00:19:23,150 ingekuwa tu magazeti nje neno "jina." 362 00:19:23,150 --> 00:19:26,340 Hivyo, hiyo ni kitu cha kuangalia nje kwa. 363 00:19:26,340 --> 00:19:29,792 >> Hivyo kitu kingine ilani ni kwamba, wakati sisi 364 00:19:29,792 --> 00:19:31,500 wanataka kutumia kazi render_template, 365 00:19:31,500 --> 00:19:34,490 sisi kweli kuwa kuagiza ni wazi kutoka chupa. 366 00:19:34,490 --> 00:19:36,915 Na hii ni mfano wa modularity ya chupa, 367 00:19:36,915 --> 00:19:39,290 kwamba huna kuagiza mambo ambayo huna haja. 368 00:19:39,290 --> 00:19:41,290 Unaweza tu kuleta katika kazi kweli 369 00:19:41,290 --> 00:19:43,450 huna haja, ambayo ni wakati mwingine nzuri, hivyo huna 370 00:19:43,450 --> 00:19:46,560 kuwa na kazi hizi zote wamekaa kuzunguka kwamba wewe si kutumia, 371 00:19:46,560 --> 00:19:49,730 lakini pia, kama wewe kusahau kuwa wewe haja ya kuagiza render_template, 372 00:19:49,730 --> 00:19:52,660 pengine utasikia kupata onyo ambayo basi wewe kujua kuhusu hilo. 373 00:19:52,660 --> 00:19:56,700 Hivyo, kwamba ni templating. 374 00:19:56,700 --> 00:20:01,680 >> Hivyo, tumekuwa umeonyesha jinsi ya kufanya kurasa rahisi mtandao, 375 00:20:01,680 --> 00:20:04,947 na kuongeza mantiki kidogo zaidi kwa hivyo, katika suala la routing kutofautiana. 376 00:20:04,947 --> 00:20:08,280 Inakuwezesha kufanya mambo mbalimbali kulingana na nini URL kwenda, na pia wakati huo, kutoa 377 00:20:08,280 --> 00:20:11,950 maana HTML kidogo zaidi katika suala la jinsi gani unataka kutoa mambo. 378 00:20:11,950 --> 00:20:14,210 Huna kuweka yote HTML yako katika Python yako, 379 00:20:14,210 --> 00:20:16,640 lakini kwa pretty much kila maombi ya mtandao, 380 00:20:16,640 --> 00:20:21,480 wewe ni kwenda kutaka aina fulani wa takwimu mfano yanayohusiana na hayo. 381 00:20:21,480 --> 00:20:25,560 >> Na hivyo kijadi, hii ingekuwa kuwa kitu kama SQL database. 382 00:20:25,560 --> 00:20:30,280 Na unaweza tu kuingiliana moja kwa moja na SQL. 383 00:20:30,280 --> 00:20:32,190 Chatu ana, nadhani ni kuitwa. 384 00:20:32,190 --> 00:20:33,040 SQLite 3. 385 00:20:33,040 --> 00:20:38,454 Unaweza tu kuagiza SQLite 3 na kutekeleza maswali SQL moja kwa moja, 386 00:20:38,454 --> 00:20:40,870 lakini sijui kuhusu wewe, lakini mimi kwa kweli si kama, tu, 387 00:20:40,870 --> 00:20:42,750 kuandika maswali SQL. 388 00:20:42,750 --> 00:20:45,350 Inaelekea kupata kweli muda mrefu na ngumu. 389 00:20:45,350 --> 00:20:49,180 >> Na hivyo, kitu ambacho Mimi kama kutumia ni nini 390 00:20:49,180 --> 00:20:53,610 inayojulikana kama ORM, ambayo ni kitu-kimahusiano ramani. 391 00:20:53,610 --> 00:20:56,890 Na hatua ya kitu-kimahusiano ramani, 392 00:20:56,890 --> 00:21:00,100 ni kwamba kuna mambo mawili tofauti njia unaweza kufikiri juu ya database. 393 00:21:00,100 --> 00:21:03,240 >> Hivyo mfano kwamba Profesa Malan kawaida 394 00:21:03,240 --> 00:21:07,660 anatumia darasani, ni Excel meza, ambapo una safu hizi na nguzo hizi, 395 00:21:07,660 --> 00:21:10,210 na kwamba muhimu kweli kweli kwa jinsi ni kuwakilishwa katika SQL 396 00:21:10,210 --> 00:21:13,170 na jinsi kiutendaji na hivyo, lakini njia nyingine ambayo ni kweli 397 00:21:13,170 --> 00:21:16,390 muhimu kufikiri juu yake wakati mwingine, ni katika suala la madarasa na vitu. 398 00:21:16,390 --> 00:21:20,420 >> Hivyo badala ya kufikiri ya kila meza kama kuwa 399 00:21:20,420 --> 00:21:23,040 huu mfululizo ambayo ina baadhi ya Maelezo, unaweza kweli 400 00:21:23,040 --> 00:21:26,100 kufikiria kama kuwa kila meza ni darasani, 401 00:21:26,100 --> 00:21:29,810 na kisha kila mfano wa darasa ina tabia fulani. 402 00:21:29,810 --> 00:21:35,110 Hivyo, katika mfano huu, matukio ya darasa ni safu katika meza, 403 00:21:35,110 --> 00:21:37,490 na kisha kila mali ingekuwa kuwa safu katika meza. 404 00:21:37,490 --> 00:21:40,840 >> Hivyo, ORM kwamba mimi kama kutumia inaitwa peewee. 405 00:21:40,840 --> 00:21:43,520 Ni kweli dogo, aina ya kama chupa. 406 00:21:43,520 --> 00:21:46,760 Nadhani wao kwenda vizuri pamoja, lakini kuna mengi ya Orms mengine 407 00:21:46,760 --> 00:21:47,730 kwamba unaweza kutumia. 408 00:21:47,730 --> 00:21:52,180 Moja maarufu zaidi ni inayojulikana kama SQLAlchemy, 409 00:21:52,180 --> 00:21:56,050 na siwezi kukumbuka kwa nini mimi awali waliamua peewee zaidi SQLAlchemy, 410 00:21:56,050 --> 00:21:58,311 au napenda kukuambia kwa nini mimi nadhani ni moja bora, 411 00:21:58,311 --> 00:22:01,060 lakini sisi ni kwenda tu kutumia hii moja kwa sababu ninajua jinsi ya kutumia hiyo. 412 00:22:01,060 --> 00:22:04,760 >> Hivyo, swali moja ni, kwa nini unapaswa kujisumbua kwa kutumia ORM, 413 00:22:04,760 --> 00:22:07,552 badala ya moja kwa moja kuandika maswali SQL? 414 00:22:07,552 --> 00:22:09,760 Na nadhani kesi bora, ni kwamba si kweli 415 00:22:09,760 --> 00:22:11,356 kuandika maswali SQL. 416 00:22:11,356 --> 00:22:14,480 Ni rahisi, kama mimi nitakuonyesha, kwa kufanya mambo kama uteuzi, kuingizwa, 417 00:22:14,480 --> 00:22:16,157 kufutwa, hasa kujenga meza. 418 00:22:16,157 --> 00:22:17,990 Ni rahisi zaidi kwa kuandika muundo wa darasani, 419 00:22:17,990 --> 00:22:22,250 kuliko ilivyo kuunda Kujenga Meza kauli, lakini jambo moja 420 00:22:22,250 --> 00:22:25,710 kuwa na ufahamu wa, ni kwamba ORM kujaribu wake bora 421 00:22:25,710 --> 00:22:28,640 kufikiri nini zaidi ufanisi swala SQL itakuwa, 422 00:22:28,640 --> 00:22:30,110 lakini wakati mwingine anapata ni mbaya. 423 00:22:30,110 --> 00:22:32,660 >> Na hasa kama wewe ni kufanya kazi na database kubwa, 424 00:22:32,660 --> 00:22:35,557 unaweza taarifa kwamba swala kwamba lazima kukimbia kwa haraka, 425 00:22:35,557 --> 00:22:36,640 ni kweli kuchukua muda mrefu. 426 00:22:36,640 --> 00:22:40,164 Na kama ukiangalia chini ya kofia na jinsi ORM ni kutafsiri kwamba katika SQL, 427 00:22:40,164 --> 00:22:42,080 inaweza kuwa kufanya kitu kweli ujinga, 428 00:22:42,080 --> 00:22:44,371 kwa sababu tu ni aina ya gestured nia yako mbaya. 429 00:22:44,371 --> 00:22:48,080 Na, kumekuwa na wakati ambapo Nimepata kuipuuza, na tu 430 00:22:48,080 --> 00:22:52,429 kutekeleza maswali yangu mwenyewe SQL, tu sababu ilikuwa parsing kwa namna ya ajabu. 431 00:22:52,429 --> 00:22:54,220 Kwa hiyo, kuna baadhi ya uendeshaji, tu kwa njia 432 00:22:54,220 --> 00:22:58,680 kwamba inaandaa yako kauli chini katika SQL. 433 00:22:58,680 --> 00:23:06,200 >> Kwa hiyo, hebu angalia super haraka katika mfano rahisi ya data mfano 434 00:23:06,200 --> 00:23:07,350 kwamba unaweza kutumia. 435 00:23:07,350 --> 00:23:11,880 Hivyo, hii ni Python kificho, na hivyo Jambo la kwanza unataka kufanya ni kutoka 436 00:23:11,880 --> 00:23:12,950 peewee kuagiza *. 437 00:23:12,950 --> 00:23:15,850 Hivyo, tofauti na chupa, ambapo una modules haya yote ya mtu binafsi, 438 00:23:15,850 --> 00:23:18,125 na unataka kuagiza chupa, na kuandika Kigezo, na baadhi ya watu wengine 439 00:23:18,125 --> 00:23:20,690 kwamba tutaweza kuona baadaye, kutoka peewee, unaweza tu kuagiza kila kitu, 440 00:23:20,690 --> 00:23:22,290 kwa sababu ni maktaba pretty ndogo. 441 00:23:22,290 --> 00:23:26,490 >> Hivyo, jambo la kwanza unataka kufanya, ni kweli kujenga hii kitu database. 442 00:23:26,490 --> 00:23:31,212 Hivyo, una db = SqliteDatabase, na kisha jina la orodha yako. 443 00:23:31,212 --> 00:23:33,170 Na hii itakuwa kweli kujenga database kitu 444 00:23:33,170 --> 00:23:36,230 kwamba unaweza kuingiliana na, na peewee. 445 00:23:36,230 --> 00:23:40,570 >> Na kisha, tuna halisi mfano kwamba tunataka kujenga. 446 00:23:40,570 --> 00:23:42,470 Hivyo meza tunataka kujenga. 447 00:23:42,470 --> 00:23:47,270 Kwa hiyo, ndani ya peewee, kila darasa ina meza yake mwenyewe ndani ya orodha yako. 448 00:23:47,270 --> 00:23:52,800 Hivyo, wote wa madarasa kurithi kutoka mfano msingi, 449 00:23:52,800 --> 00:23:55,960 na mji mkuu wa M mfano ni kitu ambacho inavyoelezwa katika peewee. 450 00:23:55,960 --> 00:24:02,162 >> Kwa hiyo, yote ya mifano yako lazima kurithi kama superclass yao juu, 451 00:24:02,162 --> 00:24:04,620 wanapaswa kurithi kutoka mfano, lakini nini kweli baridi, 452 00:24:04,620 --> 00:24:07,610 ni kwamba unaweza kweli kuwa yako mifano wanarithiana. 453 00:24:07,610 --> 00:24:10,530 Na muda mwingi, yako mifano data si lazima 454 00:24:10,530 --> 00:24:13,754 kufanya nzuri urithi uongozi, lakini Mara ambapo wao kufanya, ni kweli ni nzuri, 455 00:24:13,754 --> 00:24:15,920 kwa sababu una mtindo asili kutoka kwa kila mmoja. 456 00:24:15,920 --> 00:24:19,710 >> Kwa hiyo, sisi kuelezwa darasa hili 'mwanafunzi,' ambayo kurithi mfano, 457 00:24:19,710 --> 00:24:21,170 na ina mali watatu. 458 00:24:21,170 --> 00:24:24,080 Ina ID, ambayo ni PrimaryKeyField, ambayo 459 00:24:24,080 --> 00:24:26,920 ni kitu ambacho zinazotolewa na peewee, jina lake ni Charfield, 460 00:24:26,920 --> 00:24:28,490 na daraja ni IntegerField. 461 00:24:28,490 --> 00:24:32,260 Hivyo hii wanaweza au kuwa jinsi CS50 kweli maduka yote 462 00:24:32,260 --> 00:24:33,650 wanafunzi wa darasa. 463 00:24:33,650 --> 00:24:36,060 Sio, lakini hii ni jinsi napenda kufanya hivyo. 464 00:24:36,060 --> 00:24:37,920 >> Na kisha ina, ndani ya darasa hili, na hii 465 00:24:37,920 --> 00:24:41,620 ni kitu unaweza kufanya na Chatu, unaweza kuwa na madarasa Furushi. 466 00:24:41,620 --> 00:24:43,920 Na hili ni jambo hiyo ni kwa mujibu wa peewee. 467 00:24:43,920 --> 00:24:47,250 Hivyo, Meta hii darasani, una bayana kwamba orodha ni 468 00:24:47,250 --> 00:24:49,830 sawa na kitu kwamba sisi aliumba hapo juu. 469 00:24:49,830 --> 00:24:54,339 Na hii anasema faili ndicho meza hii kweli kwenda kuwa zilizomo katika. 470 00:24:54,339 --> 00:24:57,130 Hivyo hii ni kitu ambacho una kufanya ndani ya yote ya mifano yako. 471 00:24:57,130 --> 00:24:59,380 Wewe tu na kutaja ndani ya darasa hili Meta 472 00:24:59,380 --> 00:25:01,400 kwamba orodha ni sawa na db. 473 00:25:01,400 --> 00:25:03,940 Kwa hiyo kile Mimi kawaida kufanya, kama nina rundo la mifano mbalimbali, 474 00:25:03,940 --> 00:25:05,910 ni kwamba nina msingi moja mfano, kwamba mimi kawaida 475 00:25:05,910 --> 00:25:08,839 wito tu "msingi mfano" ambayo ina tabaka la Meta, 476 00:25:08,839 --> 00:25:10,380 na unaweka orodha sawa na db. 477 00:25:10,380 --> 00:25:13,710 Na kisha wote wa mifano yangu baadae atarithi kutoka kwamba darasa msingi. 478 00:25:13,710 --> 00:25:16,760 Na kisha mimi si kuwa na wasiwasi kuhusu kuweka tabaka la Meta. 479 00:25:16,760 --> 00:25:21,490 >> Hivyo, wakati huu kweli anapata ulioandaliwa chini katika SQL taarifa, 480 00:25:21,490 --> 00:25:24,875 inaonekana kama jambo hili nasty chini hapa, "Kujenga meza mwanafunzi ID integer, 481 00:25:24,875 --> 00:25:26,020 "Chochote. 482 00:25:26,020 --> 00:25:30,002 >> Na, nadhani kwamba ni mfupi, hii swala SQL haki hapa, 483 00:25:30,002 --> 00:25:32,960 lakini kama ukiangalia darasa hili hapa unaweza kuona hasa nini kinaendelea. 484 00:25:32,960 --> 00:25:36,116 Unaweza kuona aina gani ya mashamba kuna watu, nini re walioitwa, 485 00:25:36,116 --> 00:25:38,115 na hivyo, nadhani kwamba kuangalia hii chatu kificho 486 00:25:38,115 --> 00:25:43,340 ni mengi zaidi kuliko someka kujaribu kuandika hii swala SQL. 487 00:25:43,340 --> 00:25:45,990 >> Hivyo, ili kweli kutumia orodha, 488 00:25:45,990 --> 00:25:48,470 tuna kuungana na ndani ya chatu. 489 00:25:48,470 --> 00:25:52,770 Kwa hiyo, mimi kawaida kuandika kazi kuitwa initialize_db kwamba anafanya mambo mawili. 490 00:25:52,770 --> 00:25:54,880 Inachukua katika orodha kitu db na 491 00:25:54,880 --> 00:25:58,360 inaunganisha hiyo, ambayo kuufungua tu up sehemu ya database. 492 00:25:58,360 --> 00:26:00,860 Kama wewe ni kukimbia tu ingawa tovuti kwenye mashine yako, 493 00:26:00,860 --> 00:26:04,320 siyo mpango super kubwa ya kuwa na wasiwasi kuhusu kuunganisha na kujiondoa, 494 00:26:04,320 --> 00:26:06,885 lakini kama wewe ni mbio hiyo kwenye tovuti, wewe 495 00:26:06,885 --> 00:26:10,010 unataka kuhakikisha kwamba, wakati mtumiaji inaunganisha hiyo, wakati wao wa karibu nje 496 00:26:10,010 --> 00:26:12,270 tovuti, wao kukatwa ili uweze hawana rundo la watu kushikamana 497 00:26:12,270 --> 00:26:14,480 Mbegu yako yote kwa mara moja. 498 00:26:14,480 --> 00:26:16,370 >> Na kisha, wakati kuungana na database, 499 00:26:16,370 --> 00:26:20,832 unataka simu db.create_tables, na orodha ya mifano kwa nini unataka 500 00:26:20,832 --> 00:26:21,540 kujenga meza. 501 00:26:21,540 --> 00:26:23,950 Hivyo hapa, mimi nataka tu kujenga ni kwa mwanafunzi hii. 502 00:26:23,950 --> 00:26:28,070 Na kisha, jambo muhimu, ni kwa kutaja salama = Kweli wengi wakati. 503 00:26:28,070 --> 00:26:30,380 Kwa hiyo kile kauli hii atafanya, ni kwamba 504 00:26:30,380 --> 00:26:33,580 inajenga meza kwa mwanafunzi mfano, lakini tu 505 00:26:33,580 --> 00:26:36,109 kama meza ambayo ina si imeanzishwa tayari. 506 00:26:36,109 --> 00:26:37,400 Hiyo ni nini bayana salama. 507 00:26:37,400 --> 00:26:39,150 Hivyo itakuwa si overwrite meza yako zilizopo, 508 00:26:39,150 --> 00:26:41,525 itakuwa tu kujenga mpya meza kama kuna hata mmoja hapo. 509 00:26:41,525 --> 00:26:45,090 Kwa hiyo, unaweza kujenga tu meza mara moja kwa kutumia SQL. 510 00:26:45,090 --> 00:26:49,410 Na kisha kuwa na kwamba orodha kikao huko, na kisha kuungana na kila wakati, 511 00:26:49,410 --> 00:26:52,450 lakini ni kawaida nzuri tu kuweka katika wito huu create_tables, 512 00:26:52,450 --> 00:26:55,550 hivyo kwamba, kama wewe milele kufuta yako Mbegu wakati kukimbia mtandao wako 513 00:26:55,550 --> 00:26:57,960 programu tena, itakuwa recreate yake. 514 00:26:57,960 --> 00:27:00,730 >> Kwa hiyo, tu kuhakikisha kwamba ni salama ni maalum kwa kuwa Ni kweli kwamba 515 00:27:00,730 --> 00:27:03,580 au utapata taarifa yako tu kupata clobbered kila wakati. 516 00:27:03,580 --> 00:27:06,380 Na kisha, unaweza kupiga tu initialize_db kuanzisha 517 00:27:06,380 --> 00:27:09,820 uhusiano, na kujenga meza kama ni lazima. 518 00:27:09,820 --> 00:27:13,150 >> Kwa hiyo, jambo ya kawaida kwamba wewe unataka kufanya, 519 00:27:13,150 --> 00:27:15,920 au moja ya mambo ya kawaida, ni kwa kweli kuingiza mambo 520 00:27:15,920 --> 00:27:17,170 katika orodha yako. 521 00:27:17,170 --> 00:27:19,430 Na hivyo, badala ya kuwa kuandika kuingiza KATIKA 522 00:27:19,430 --> 00:27:21,990 Kauli na wote wa maadili maalum, 523 00:27:21,990 --> 00:27:24,650 unaweza kweli kuwaita kazi juu ya mwanafunzi darasani. 524 00:27:24,650 --> 00:27:28,200 Hivyo, wakati wewe kujenga darasa kwamba kurithi kutoka mfano, 525 00:27:28,200 --> 00:27:30,200 ina hii kuunda mbinu. 526 00:27:30,200 --> 00:27:33,870 >> Hivyo, unaweza kufanya darasa name.create, na bayana vigezo 527 00:27:33,870 --> 00:27:35,260 kwamba unataka kupita katika. 528 00:27:35,260 --> 00:27:39,200 Hivyo, kama Nataka kuongeza baadhi ya wanafunzi kwa CS50 daraja kitabu yetu mfano, 529 00:27:39,200 --> 00:27:41,820 Mimi itabidi kuweka katika Daudi, ambaye ana daraja nzuri sana, ana 95. 530 00:27:41,820 --> 00:27:45,100 Na mimi mwenyewe, ambaye ni kutofanya vizuri katika CS50, nina 50. 531 00:27:45,100 --> 00:27:47,600 Na hivyo, Jambo zuri nini hii kujenga kazi gani, 532 00:27:47,600 --> 00:27:53,040 ni kwamba kuirudisha mfano, au mstari, ili kuundwa ndani ya meza, 533 00:27:53,040 --> 00:27:55,750 na hivyo basi wewe kuhifadhi kwamba katika kutofautiana, na kazi na baadaye. 534 00:27:55,750 --> 00:27:58,830 Unaweza kubadilisha karibu, ambayo Mimi itabidi kuonyesha mfano wa. 535 00:27:58,830 --> 00:28:03,050 >> Taarifa kwamba sikuwa kuwa na bayana ID, 536 00:28:03,050 --> 00:28:09,340 kwa sababu kwa vile ni PrimaryKeyField, itakuwa moja kwa moja 537 00:28:09,340 --> 00:28:10,930 increment yake kama huna bayana yake. 538 00:28:10,930 --> 00:28:12,250 Na, kwa kweli, pengine lazima bayana jambo hilo, 539 00:28:12,250 --> 00:28:14,810 kwa sababu waweza ajali clobber ID ya mtu mwingine. 540 00:28:14,810 --> 00:28:16,830 Na unataka kufanya kuhakikisha kwamba ni ya kipekee. 541 00:28:16,830 --> 00:28:20,662 >> Kwa hiyo, kwa kweli, wengi jambo la kawaida unataka kufanya, 542 00:28:20,662 --> 00:28:22,620 pengine kuchagua nje ya database mara moja 543 00:28:22,620 --> 00:28:24,078 na mengi ya habari huko. 544 00:28:24,078 --> 00:28:27,360 Na hivyo, kama unataka kupata kila kitu, hivyo sawa na nyota kuchagua 545 00:28:27,360 --> 00:28:30,940 kutoka wanafunzi taarifa, ni ingekuwa tu kuwa student.select. 546 00:28:30,940 --> 00:28:34,380 Na kwamba nitakupa nyuma safu na wote wa mwanafunzi vitu ndani yake 547 00:28:34,380 --> 00:28:35,770 kwamba iterate juu unataka. 548 00:28:35,770 --> 00:28:37,019 Unaweza kupata mambo ya nje ya hiyo. 549 00:28:37,019 --> 00:28:39,310 Na zaidi ya muda, wewe hawataki tu kufanya kuchagua, 550 00:28:39,310 --> 00:28:40,935 wewe kweli unataka kutaja kitu. 551 00:28:40,935 --> 00:28:44,580 Na hivyo, unaweza mlolongo pamoja simu hizi kazi, 552 00:28:44,580 --> 00:28:48,830 kama jinsi wewe ungekuwa mlolongo pamoja kauli katika SQL. 553 00:28:48,830 --> 00:28:53,002 Hivyo unaweza kufanya student.select (). Ambapo katika mfano huu. 554 00:28:53,002 --> 00:28:54,710 Na kisha, unaweza kutaja masharti, 555 00:28:54,710 --> 00:28:57,880 tu kwa kutumia chatu kawaida Booleans kuangalia mambo. 556 00:28:57,880 --> 00:29:02,110 >> Kwa hiyo, katika kesi hii, unataka kikomo nini wewe kuchagua kwa, 557 00:29:02,110 --> 00:29:06,790 ambapo student.grade ni sawa na 50, na student.name ni sawa na Ezra, 558 00:29:06,790 --> 00:29:09,130 ili tu kupata nami nje ya hiyo. 559 00:29:09,130 --> 00:29:11,340 Na taarifa, moja kwa kweli Jambo hila hapa ni 560 00:29:11,340 --> 00:29:15,570 kwamba, kama unataka kutaja an na / au na au / au, 561 00:29:15,570 --> 00:29:19,840 katika Python, kwa kawaida kutumia, Nadhani neno "na" kwa kweli, 562 00:29:19,840 --> 00:29:23,351 lakini hapa kutumia ampersand moja, ambayo ni kawaida bitwise operator, 563 00:29:23,351 --> 00:29:25,600 lakini katika kesi hii maalum, njia tu peewee anafanya hivyo, 564 00:29:25,600 --> 00:29:27,660 matumizi moja ampersand kutaja "na." 565 00:29:27,660 --> 00:29:29,451 Hiyo ni kitu ambacho Mimi kupata mchanganyiko juu sana, 566 00:29:29,451 --> 00:29:32,530 lakini haina kuja kwamba sehemu kubwa katika mazoezi. 567 00:29:32,530 --> 00:29:36,350 >> Na kisha, mara moja una yote ya wanafunzi kutoka katika orodha, 568 00:29:36,350 --> 00:29:39,420 mara moja umefanya uko kuchagua na kuvaa yako au chochote, 569 00:29:39,420 --> 00:29:42,334 unaweza kutumia foreach kitanzi, kama kawaida katika Python, 570 00:29:42,334 --> 00:29:44,500 na aina yoyote ya iterator au kwa aina yoyote ya safu. 571 00:29:44,500 --> 00:29:46,333 Hivyo unaweza kufanya, kwa s katika student.select (). whe 572 00:29:46,333 --> 00:29:52,930 re (Student.grade <75), na hivyo mapenzi hii iterate juu ya kila mwanafunzi katika meza 573 00:29:52,930 --> 00:29:56,260 ambao daraja ni chini ya 75, ambayo katika kesi hiyo, bado mimi tu. 574 00:29:56,260 --> 00:29:59,218 Na kisha unaweza kufanya kitu ndani ya kuwa kitanzi, kama kutuma barua pepe yangu 575 00:29:59,218 --> 00:30:01,680 na kuniambia kwa kweli kugeuka katika Tatizo langu Sets. 576 00:30:01,680 --> 00:30:04,550 >> Hivyo, jambo lingine unaweza kufanya, ni ni kweli rahisi 577 00:30:04,550 --> 00:30:06,460 update safu ndani ya meza. 578 00:30:06,460 --> 00:30:08,720 Hivyo, kumbuka nyuma hapa, yako wakati mimi kuingizwa, 579 00:30:08,720 --> 00:30:11,440 Mimi alichukua thamani hiyo ilikuwa akarudi na student.create, 580 00:30:11,440 --> 00:30:14,920 na mimi kupewa kwa jina inaitwa Ezra. 581 00:30:14,920 --> 00:30:18,995 Na hivyo sasa, unaweza kubadilisha maadili ndani ya mfano kwamba, 582 00:30:18,995 --> 00:30:20,870 tu kama wewe ungekuwa kawaida darasani katika Python. 583 00:30:20,870 --> 00:30:25,060 >> Hivyo unaweza kuweka ezra.grade = 95 na kwamba update nakala za mitaa, 584 00:30:25,060 --> 00:30:28,380 lakini kama wewe kweli unataka kufanya mabadiliko ambayo kwa Mbegu, 585 00:30:28,380 --> 00:30:31,410 una kuwaita ezra.save, hivyo aitwaye njia .save 586 00:30:31,410 --> 00:30:32,650 juu ya mfano. 587 00:30:32,650 --> 00:30:38,085 >> Na hivyo sasa, mimi kuwa na mafanikio iliyopita Daraja yangu mwenyewe ndani ya database. 588 00:30:38,085 --> 00:30:41,210 Kwa hiyo, basi hebu kusema kwamba mimi kupata hawakupata kubadilisha Daraja yangu ndani ya database. 589 00:30:41,210 --> 00:30:44,126 Profesa Malan pengine ni kwenda kutaka kufuta mimi kutoka darasani, 590 00:30:44,126 --> 00:30:48,630 na hivyo unaweza kupiga .delete mfano mbinu tu juu ya jambo hilo. 591 00:30:48,630 --> 00:30:51,674 >> Hivyo, kama wewe alitaka kwenda tena ndani ya kitanzi hii hapa, 592 00:30:51,674 --> 00:30:53,465 na kwa kweli, badala ya kutuma barua pepe zote 593 00:30:53,465 --> 00:30:56,577 ya wanafunzi ambao daraja ni chini ya 75, alitaka kufuta yao, 594 00:30:56,577 --> 00:30:58,660 ndani ya kitanzi hii inaweza piga mfano s.delete. 595 00:30:58,660 --> 00:31:04,180 596 00:31:04,180 --> 00:31:07,780 Na jambo la mwisho kabisa unataka kufanya, ni wakati wowote kuanzisha uhusiano, 597 00:31:07,780 --> 00:31:10,350 na wewe ni kosa na kazi yako, unataka simu db.close, 598 00:31:10,350 --> 00:31:13,190 ambapo db ni kwamba orodha kitu kwamba tulikuwa na kabla. 599 00:31:13,190 --> 00:31:18,290 Na unataka kuhakikisha kwamba kila kitu anapata imefungwa nje ya. 600 00:31:18,290 --> 00:31:18,790 >> Baridi. 601 00:31:18,790 --> 00:31:22,410 Hivyo sasa, nina mfano maombi. 602 00:31:22,410 --> 00:31:26,880 Nimekuwa aina ya kabla ya kufanywa kila kitu tu ili hakutakuwa na coding yoyote kuishi 603 00:31:26,880 --> 00:31:30,220 makosa, lakini tunaweza kutembea kwa njia ya na kuona jinsi gani kuweka chupa 604 00:31:30,220 --> 00:31:33,685 na peewee pamoja, na kufanya programu rahisi. 605 00:31:33,685 --> 00:31:38,680 Mimi simu yake CS50 rant, na ni aina ya rahisi blog jukwaa. 606 00:31:38,680 --> 00:31:41,150 >> Hivyo, kwanza, mimi itabidi kuendesha na kuonyesha nini inaonekana kama, 607 00:31:41,150 --> 00:31:42,890 na kisha tunaweza kuangalia zaidi katika kanuni. 608 00:31:42,890 --> 00:32:00,470 609 00:32:00,470 --> 00:32:02,830 Sawa, hivyo hebu kukimbia tu hii. 610 00:32:02,830 --> 00:32:14,040 611 00:32:14,040 --> 00:32:17,250 Baridi, mimi itabidi kufanya hii kidogo kidogo. 612 00:32:17,250 --> 00:32:20,000 Siyo mzuri sana, kwa sababu tu Sikuweza kufanya mengi ya CSS, 613 00:32:20,000 --> 00:32:23,255 lakini kile yake ni, ina Mbegu hii ya blog posts, 614 00:32:23,255 --> 00:32:25,630 na huenda kwa njia zote za nao, na itakuwa kuonyesha yao 615 00:32:25,630 --> 00:32:28,170 juu ya ukurasa katika utaratibu wa hivi karibuni zaidi. 616 00:32:28,170 --> 00:32:30,920 Na hivyo hizi ni baadhi tu ya posts kwamba nilikuwa kuokolewa katika database. 617 00:32:30,920 --> 00:32:35,680 >> Hivyo kama tunataka kujenga mpya baada, tunaweza kwenda Kuongeza New Post, 618 00:32:35,680 --> 00:32:42,720 na tunaweza kuingia jina la baada, hivyo kitu kama, CS50 semina. 619 00:32:42,720 --> 00:32:45,360 620 00:32:45,360 --> 00:32:46,735 Wow, kweli kufurahia semina. 621 00:32:46,735 --> 00:32:51,070 622 00:32:51,070 --> 00:32:52,270 >> Baridi. 623 00:32:52,270 --> 00:32:56,060 Kisha vyombo vya habari baada, na itakuwa kuelekeza wewe nyuma ya ukurasa wa nyumbani, 624 00:32:56,060 --> 00:33:00,039 na kisha utaona kwamba karibuni baada alikuwa aliongeza. 625 00:33:00,039 --> 00:33:01,580 Na bado tuna wale wote huko. 626 00:33:01,580 --> 00:33:08,080 Hivyo sasa, hebu hatua kwa njia zote za kanuni na kuona jinsi hii ni kutekelezwa. 627 00:33:08,080 --> 00:33:11,995 >> Kwa hiyo, nadhani jambo la kwanza kwamba hebu tuangalie, ni kweli mifano. 628 00:33:11,995 --> 00:33:14,120 Muda mwingi, wakati wewe ni kubuni kitu, 629 00:33:14,120 --> 00:33:17,036 unataka kufikiria kwanza juu ya namna wewe ni kwenda kuwakilisha data yako, 630 00:33:17,036 --> 00:33:22,915 na kisha kubuni mambo kote kwamba, hivyo kila kitu kuwa hufanya akili. 631 00:33:22,915 --> 00:33:25,290 Na kwamba ni kweli jinsi mimi alifanya hivyo wakati mimi nilikuwa kufanya hii, 632 00:33:25,290 --> 00:33:28,030 Nikaketi, mawazo, je, nataka katika nafasi hiyo. 633 00:33:28,030 --> 00:33:32,130 >> Kwa hiyo, hapa, tuna muundo huo kwamba nilikuwa kutaja awali, 634 00:33:32,130 --> 00:33:33,755 ambapo sisi kufanya db = Sqldatabase ('posts.db'). 635 00:33:33,755 --> 00:33:37,840 636 00:33:37,840 --> 00:33:40,980 Katika hali halisi, pengine hawataki kwa kificho ngumu katika database jina yako. 637 00:33:40,980 --> 00:33:43,730 Kwamba lazima pengine kuwa vigezo ambayo imehifadhiwa mahali fulani, labda 638 00:33:43,730 --> 00:33:45,940 katika config faili, lakini katika mfano mdogo kama huu, 639 00:33:45,940 --> 00:33:48,310 ni sawa na kanuni ngumu kuwa katika. 640 00:33:48,310 --> 00:33:53,510 >> Hivyo sasa, tuna hii darasani Post, ambayo kurithi kutoka mfano msingi. 641 00:33:53,510 --> 00:33:56,930 Na ina, tena, ID = PrimaryKeyField. 642 00:33:56,930 --> 00:34:02,250 Kwa kweli, kama huna bayana, kama mimi kwa kweli got kuondoa hii, 643 00:34:02,250 --> 00:34:07,152 kisha peewee sisi itachukua huduma ya moja kwa moja kujenga shamba hilo ID, 644 00:34:07,152 --> 00:34:09,360 na itakuwa moja kwa moja kufanya hivyo PrimaryKey, ambayo 645 00:34:09,360 --> 00:34:12,485 Nadhani kwa kweli ni nzuri, kwa sababu kwa kawaida, hiyo ni kitu unataka kuwa, 646 00:34:12,485 --> 00:34:16,239 lakini mimi kama kuiweka katika hasa, hivyo tu Nakumbuka kwamba ni katika huko. 647 00:34:16,239 --> 00:34:19,480 Lakini kama huna bayana kwamba, kwamba atakuwa huko moja kwa moja. 648 00:34:19,480 --> 00:34:22,198 >> Hivyo basi, nina tarehe ambayo ni DateTimeField, na wote 649 00:34:22,198 --> 00:34:24,864 mashamba hayo mbalimbali, ikiwa kuangalia nyaraka peewee, 650 00:34:24,864 --> 00:34:28,920 nitakupa orodha ya tofauti aina ya mashamba uweze kutumia. 651 00:34:28,920 --> 00:34:34,440 Kwa sehemu kubwa, ni sawa kwa nini ungependa kuona katika SQL. 652 00:34:34,440 --> 00:34:37,699 Kwa hiyo, kuna Charfield, VarCharFields, textfields, 653 00:34:37,699 --> 00:34:40,550 ambayo ni kwa muda mrefu sana maandiko, kama baada ya blog 654 00:34:40,550 --> 00:34:44,460 uwezekano, DateTimeFields, DoubleFields, FloatFields, 655 00:34:44,460 --> 00:34:46,100 zote mambo kama hayo. 656 00:34:46,100 --> 00:34:51,570 >> Na unaweza kupita katika hoja nyingine kwa hiyo, ambayo sikuweza kutaja hapa. 657 00:34:51,570 --> 00:34:55,719 Sema, kwa mfano, wewe hakutaka kuruhusu nafasi hizo mbili kuwa na cheo hicho, 658 00:34:55,719 --> 00:34:59,672 unaweza kutaja kitu kama kipekee = Kweli, 659 00:34:59,672 --> 00:35:02,880 na kwamba tu parameter ziada ili shamba hilo wakati inaandaa ni chini 660 00:35:02,880 --> 00:35:06,865 ndani ya SQL, itakuwa bayana kwamba ina kuwa ya kipekee. 661 00:35:06,865 --> 00:35:09,740 Unaweza pia kutaja kitu kama si batili na mambo mengine yote 662 00:35:09,740 --> 00:35:11,750 wewe kawaida kufanya katika SQL. 663 00:35:11,750 --> 00:35:16,020 Hivyo, hii ni pretty rahisi mfano kwamba ina tarehe. 664 00:35:16,020 --> 00:35:19,460 Taarifa hapa, ndani ya DateTimeField, Mimi bayana jambo la msingi ni. 665 00:35:19,460 --> 00:35:22,560 Mimi maalum kuwa ni datetime.datetime.now, 666 00:35:22,560 --> 00:35:24,920 kwa sababu ya njia hiyo hii anapata tathmini, 667 00:35:24,920 --> 00:35:28,750 ni kweli kutathmini datetime.now wakati 668 00:35:28,750 --> 00:35:32,110 anapata kuingizwa katika orodha. 669 00:35:32,110 --> 00:35:34,760 >> Nadhani, Ningependa kuwa mara mbili kuangalia hii, 670 00:35:34,760 --> 00:35:38,222 lakini kama alivyofanya kitu kama hii, basi ingekuwa kweli kutathmini kwamba mara, 671 00:35:38,222 --> 00:35:40,180 na kisha DateTime ingekuwa daima kuwa sawa. 672 00:35:40,180 --> 00:35:44,240 Hivyo, tu kama wewe ni kufanya kitu na datetimes, kuangalia mara mbili 673 00:35:44,240 --> 00:35:47,080 kwamba ni kutathmini wakati kweli anapata kuingizwa, la sivyo 674 00:35:47,080 --> 00:35:48,780 unaweza kuwa na kuchanganyikiwa. 675 00:35:48,780 --> 00:35:51,221 >> Cheo ni tu Charfield, ambayo kuna 676 00:35:51,221 --> 00:35:53,970 hoja zaidi unaweza kupita katika kubainisha hasa ni muda gani 677 00:35:53,970 --> 00:35:56,170 unataka kuwa, lakini hapa, haikuwa kweli jambo. 678 00:35:56,170 --> 00:35:58,687 Na Nakala ni kwenda kuwa Nakala ya goli nzima, 679 00:35:58,687 --> 00:36:01,020 na kwamba itakuja kuwa TextField kwa sababu tu unataka 680 00:36:01,020 --> 00:36:03,370 kwa kuruhusu kuwa kamba pretty muda mrefu. 681 00:36:03,370 --> 00:36:05,970 >> Basi tuna Meta hii Aina kwamba tu 682 00:36:05,970 --> 00:36:11,250 bayana kwamba tunataka orodha ambapo hii ni kweli wazi juu katika 683 00:36:11,250 --> 00:36:14,267 kuwa db kitu kwamba sisi hapa. 684 00:36:14,267 --> 00:36:16,350 Na jambo la mwisho tuna hapa, ni tu kazi hii 685 00:36:16,350 --> 00:36:18,120 kwamba tunakwenda kutumia kutoka kwa programu yetu kuu 686 00:36:18,120 --> 00:36:23,970 initialize orodha kuungana na yake, na kisha kujenga meza Post. 687 00:36:23,970 --> 00:36:26,880 >> Sasa, hebu tuangalie programu kuu yenyewe. 688 00:36:26,880 --> 00:36:30,800 Hivyo hii ni moja ya kabisa kidogo tena kuliko wale 689 00:36:30,800 --> 00:36:34,840 kwamba tumeona kabla, lakini hopefully si mbaya sana. 690 00:36:34,840 --> 00:36:37,140 Hivyo, napenda kupanua hii nje. 691 00:36:37,140 --> 00:36:38,370 Sawa. 692 00:36:38,370 --> 00:36:42,070 >> Hivyo, taarifa na juu mimi kutoka nje rundo zima la mambo mengine 693 00:36:42,070 --> 00:36:44,129 kutoka chupa kwamba tuna si kweli kuona mbele. 694 00:36:44,129 --> 00:36:46,670 Na hopefully, tunaweza kwenda kwa njia ya kila mmoja wa haya moja kwa moja 695 00:36:46,670 --> 00:36:49,420 na kuongea kidogo zaidi kuhusu nao, yamepangwa kwa mfano. 696 00:36:49,420 --> 00:36:51,380 Hivyo, tuna chupa, na render_template, 697 00:36:51,380 --> 00:36:54,370 ambayo tumeona kabla, ombi hili kitu, 698 00:36:54,370 --> 00:37:00,400 ambayo itakuwa kuja wakati sisi kuangalia jinsi aina ya kuwa mimi alikuwa akionyesha kweli 699 00:37:00,400 --> 00:37:01,170 kazi. 700 00:37:01,170 --> 00:37:04,850 Kuelekeza, ambayo inakuwezesha kuelekeza nyuma kutoka Kujenga New Post 701 00:37:04,850 --> 00:37:11,710 nyuma kwa asili Mzee, na kisha URL, ambayo ni kitu ambayo inakuwezesha 702 00:37:11,710 --> 00:37:15,550 kufikiri ambapo juu ya tovuti ukurasa fulani ni. 703 00:37:15,550 --> 00:37:17,810 >> Hivyo basi, karibu Jambo mimi, ni mimi kuagiza 704 00:37:17,810 --> 00:37:21,550 wote wa habari kutoka Mifano mafaili kwamba tulikuwa tu kuangalia. 705 00:37:21,550 --> 00:37:23,140 Na, yeah. 706 00:37:23,140 --> 00:37:28,720 >> Kwa hiyo, kitu kingine kipya ambacho huja juu wakati wewe ni kushughulika na, 707 00:37:28,720 --> 00:37:31,850 hasa database, ni kwamba unaweza kutaja 708 00:37:31,850 --> 00:37:35,110 kazi ambayo anapata kuitwa kabla kila ombi, na kazi ambayo anapata 709 00:37:35,110 --> 00:37:39,690 aitwaye baada ya kila ombi, kwa kutumia hii kazi decorator app.before ombi. 710 00:37:39,690 --> 00:37:42,324 >> Na hivyo hii kupata kunyongwa popote kazi hii ni. 711 00:37:42,324 --> 00:37:44,240 Hii haina kuwa aitwaye kabla ya ombi, 712 00:37:44,240 --> 00:37:46,281 lakini kwa kawaida hiyo ni kitu busara kwa simu yake. 713 00:37:46,281 --> 00:37:48,580 714 00:37:48,580 --> 00:37:51,650 Unaweza kutaja chochote kazi unataka kupata kuitwa huko, 715 00:37:51,650 --> 00:37:56,330 hivyo mimi maalum initialize_db hii kazi ambayo tulikuwa nyuma katika Models 716 00:37:56,330 --> 00:38:02,390 faili, hivyo kabla ya kila ombi, wewe wanataka kuungana na database. 717 00:38:02,390 --> 00:38:04,560 >> Kuna mambo mawili tofauti njia unaweza kufanya hivyo. 718 00:38:04,560 --> 00:38:10,830 Unaweza kufanyaapp., I kuamini ni after_request. 719 00:38:10,830 --> 00:38:13,800 Na tofauti kati ya after_request na teardown_request, 720 00:38:13,800 --> 00:38:17,590 ni kwamba after_request kutokea tu kama ombi kwa kweli ilikuwa halali. 721 00:38:17,590 --> 00:38:20,440 Na hivyo, tu kama ombi alikuwa na mafanikio, 722 00:38:20,440 --> 00:38:22,490 kama hakuna potoka, lakini teardown_request 723 00:38:22,490 --> 00:38:26,300 hutokea katika kesi ya mafanikio ombi, au katika kesi ya upotevu. 724 00:38:26,300 --> 00:38:28,252 >> Hivyo, kwa kawaida, unataka kutumia teardown_request, 725 00:38:28,252 --> 00:38:30,460 isipokuwa unataka kufanya kitu, hasa mbalimbali 726 00:38:30,460 --> 00:38:31,470 katika kesi ya upotevu. 727 00:38:31,470 --> 00:38:35,122 Lakini tu kwa ajili ya kufunga Mbegu, kama ikifanikiwa au kama inashindwa, 728 00:38:35,122 --> 00:38:37,080 tunafanya unataka kukatwa kutoka orodha. 729 00:38:37,080 --> 00:38:41,240 Hivyo ni kuitwa, db.close juu ya db kitu. 730 00:38:41,240 --> 00:38:43,740 >> Taarifa kwamba teardown_request inachukua katika ubaguzi. 731 00:38:43,740 --> 00:38:46,781 Hivyo unaweza kuangalia kama kulikuwa na kwa kweli makosa wakati ilikuwa kufungwa, 732 00:38:46,781 --> 00:38:49,390 lakini hapa, hopefully, huko si mengi yote ya makosa, 733 00:38:49,390 --> 00:38:52,720 hivyo sisi ni tu aina ya kupuuza jambo hilo. 734 00:38:52,720 --> 00:38:55,990 >> Sawa, na wengine ni si mbaya sana. 735 00:38:55,990 --> 00:39:02,240 Hivyo, wakati sisi kwenda kwenye ukurasa wa nyumbani, sisi kulipwa huu home.html Kigezo 736 00:39:02,240 --> 00:39:03,490 ambayo kufungua. 737 00:39:03,490 --> 00:39:06,240 Kupita ni katika wadhifa sawa na, na yale huu 738 00:39:06,240 --> 00:39:10,260 anafanya yaani, kumbuka tuna post hii mfano, hivyo sisi kuchagua nafasi zote, 739 00:39:10,260 --> 00:39:13,890 na kisha kitu kingine unaweza kufanya, unaweza kutaja WAPI kifungu, 740 00:39:13,890 --> 00:39:16,910 unaweza kutaja ili kwa, na hivyo tunachukua 741 00:39:16,910 --> 00:39:18,820 yote ya posts kwamba kupata kuchaguliwa, na kisha 742 00:39:18,820 --> 00:39:22,590 sisi ili nao na post.date.descending. 743 00:39:22,590 --> 00:39:25,030 Na kwamba bayana, wakati wao kweli kuja nje, 744 00:39:25,030 --> 00:39:29,250 moja ya hivi karibuni itakuwa moja ya kwanza. 745 00:39:29,250 --> 00:39:31,420 >> Na kisha, sisi kupita kwamba katika home.html template, 746 00:39:31,420 --> 00:39:34,240 hivyo hebu kweli kufungua kwamba Kigezo kweli haraka, 747 00:39:34,240 --> 00:39:36,760 na kuangalia jinsi hiyo kazi. 748 00:39:36,760 --> 00:39:42,130 Na hii si HTML kubwa, lakini hopefully, tunaweza kuzingatia chatu. 749 00:39:42,130 --> 00:39:46,960 >> Hivyo kuna kiungo kwa Kuongeza New Baada, na hivyo hii inabainisha njia 750 00:39:46,960 --> 00:39:51,580 ndani ya chupa kwamba sisi kufafanua, ambayo ni haki hapa. 751 00:39:51,580 --> 00:39:56,310 Hii ni mpya baada ya njia, na sisi bayana kwamba hapa. 752 00:39:56,310 --> 00:40:00,450 Na hivyo kuwa ni kiungo ambayo kisha kwenda kwa kuwa njia ndani ya kompyuta chupa. 753 00:40:00,450 --> 00:40:03,820 >> Jambo zaidi ya kuvutia ni hii kwa kitanzi hapa. 754 00:40:03,820 --> 00:40:07,685 Hivyo sisi kutaja kuwa hii baada parameter ambayo 755 00:40:07,685 --> 00:40:09,560 ilipitishwa katika kazi render_template, 756 00:40:09,560 --> 00:40:13,550 kwa kila baada katika wadhifa wa kitu kwamba anapata kupita katika. 757 00:40:13,550 --> 00:40:16,600 Tunataka magazeti nje kichwa cha habari, katika H1, 758 00:40:16,600 --> 00:40:21,930 na kisha chini, tunataka magazeti nje baada maandishi ndani ya aya. 759 00:40:21,930 --> 00:40:25,710 >> Na hapa, tunaweza kweli piga chatu kazi, 760 00:40:25,710 --> 00:40:35,130 hivyo tunaweza kuwaita strftime, ST-RF muda, na unaweza kupita katika string format 761 00:40:35,130 --> 00:40:37,064 kwamba unataka magazeti data kutoka katika. 762 00:40:37,064 --> 00:40:39,980 Hivyo ni pretty nzuri kwamba unaweza kweli kuwaita hii kazi chatu 763 00:40:39,980 --> 00:40:41,090 kutoka ndani hapa. 764 00:40:41,090 --> 00:40:44,370 Huna kufanya formatting juu ya upande mtawala, kwa sababu kwa kweli, 765 00:40:44,370 --> 00:40:47,770 formatting tarehe ni kitu ambacho unataka kukabiliana ndani ya View. 766 00:40:47,770 --> 00:40:51,480 >> Na wote wa asilimia hizi mambo si super muhimu. 767 00:40:51,480 --> 00:40:55,270 Kama wewe kuangalia juu nyaraka kwa strftime kazi katika Python, 768 00:40:55,270 --> 00:40:57,040 inabainisha haya yote mambo, lakini hiyo ya 769 00:40:57,040 --> 00:40:59,190 jinsi gani, wakati tulikuwa kuangalia katika ukurasa wa nyumbani hapa, 770 00:40:59,190 --> 00:41:04,440 ni format hii na nzuri tarehe, na ni bayana AM au PM, 771 00:41:04,440 --> 00:41:09,410 lakini kwa kawaida, kama sisi hawakuwa na hii hapa, 772 00:41:09,410 --> 00:41:14,024 pengine utasikia kupata baadhi ya takataka tarehe hiyo hakuwa na kuangalia nzuri sana. 773 00:41:14,024 --> 00:41:15,940 Na kisha sisi taja post.text, na mimi naweza 774 00:41:15,940 --> 00:41:19,460 kuweka wanandoa wa mstari mapumziko hapa, tu 775 00:41:19,460 --> 00:41:21,820 kuweka baadhi ya maeneo kati ya kila post. 776 00:41:21,820 --> 00:41:26,270 >> Kwa hiyo, nadhani muhimu zaidi Jambo katika mfano huu, 777 00:41:26,270 --> 00:41:28,697 ni kwamba unaweza kutumia hii kwa kitanzi. 778 00:41:28,697 --> 00:41:30,780 Na hii ni sawa na mambo unaweza kufanya katika PHP. 779 00:41:30,780 --> 00:41:32,905 Unaweza iterate kupitia, kila kitu anapata kupita katika, 780 00:41:32,905 --> 00:41:36,719 na hivyo, badala ya kuwa na kufanya nakala / kuweka, nakala / kuweka HTML wote, 781 00:41:36,719 --> 00:41:40,010 wewe tu na kuandika ni mara moja, na kisha unaweza iterate juu ya yote ya vyeo. 782 00:41:40,010 --> 00:41:41,510 >> Na hili ni jambo kawaida kwamba unataka 783 00:41:41,510 --> 00:41:44,510 kufanya, wakati una mengi ya data, ni kwamba kwa kila kitu katika data zako, 784 00:41:44,510 --> 00:41:48,370 unataka kufanya jambo kama hilo. 785 00:41:48,370 --> 00:41:51,690 Na kisha, kumbuka tu, kwamba wakati unataka magazeti nje kitu kwa uwazi 786 00:41:51,690 --> 00:41:54,780 katika HTML, wewe kutumia braces mara mbili hapa, 787 00:41:54,780 --> 00:41:57,820 lakini kisha wakati unataka kutaja baadhi ya taarifa kuhusu hali, 788 00:41:57,820 --> 00:42:02,430 au juu ya kwa kitanzi, wewe kutumia asilimia mabano. 789 00:42:02,430 --> 00:42:08,730 >> Hivyo, kurejea chatu kanuni, ili anaelezea 790 00:42:08,730 --> 00:42:12,242 nini kinatokea katika kuu njia, wakati sisi kwenda huko, 791 00:42:12,242 --> 00:42:14,450 ni tu maonyesho zote posts, lakini basi swali 792 00:42:14,450 --> 00:42:17,440 ni, jinsi gani sisi kweli kupata posts katika orodha, ambayo 793 00:42:17,440 --> 00:42:18,970 ni kidogo zaidi ya kuvutia. 794 00:42:18,970 --> 00:42:23,960 >> Hivyo, unapobonyeza New Baada kiungo, ambayo tuliona hapa, 795 00:42:23,960 --> 00:42:26,000 ni maelekezo wewe na fomu hii. 796 00:42:26,000 --> 00:42:29,580 Na kwamba tu wito rahisi kazi render_template, ambayo kisha 797 00:42:29,580 --> 00:42:32,110 hupita katika baada ya mwezi katika HTML fomu. 798 00:42:32,110 --> 00:42:36,212 Basi hebu tuangalie hiyo. 799 00:42:36,212 --> 00:42:37,420 Hivyo hii ni moja ya pretty rahisi. 800 00:42:37,420 --> 00:42:45,110 Ina rahisi HTML fomu, ambayo utaangalia kidogo utambuzi, 801 00:42:45,110 --> 00:42:47,380 kulingana na aina katika CS50 Fedha. 802 00:42:47,380 --> 00:42:49,940 Na hivyo, sisi kutaja hapa, hatua. 803 00:42:49,940 --> 00:42:52,435 Na hapa, kama wewe ni kufanya kazi na PHP, kwa kawaida, ni 804 00:42:52,435 --> 00:42:55,930 itakuwa kitu kama, create.PHP, lakini hapa 805 00:42:55,930 --> 00:42:59,960 sisi kweli bayana njia ndani ya kompyuta chupa. 806 00:42:59,960 --> 00:43:02,520 Na hivyo, njia hii sambamba kujenga njia 807 00:43:02,520 --> 00:43:05,680 kwamba sisi hapa, ambayo tutaweza kwenda katika katika pili. 808 00:43:05,680 --> 00:43:07,630 >> Na hivyo, sisi kutaja kuwa ni njia ya posta, 809 00:43:07,630 --> 00:43:09,820 kwa sababu tunataka kutuma taarifa hii fomu, na kwa kawaida 810 00:43:09,820 --> 00:43:12,945 wakati wewe ni kutuma taarifa kutoka fomu, unaweza kutaka kutumia ombi baada, 811 00:43:12,945 --> 00:43:15,760 tu hivyo huna kuishia na hii kubwa, unwieldy URL. 812 00:43:15,760 --> 00:43:18,970 Lakini pia unaweza kutumia ombi GET, na kuupitisha katika na kutofautiana routing, 813 00:43:18,970 --> 00:43:21,170 lakini kwa namna, ni nzuri na baada ya ombi hapa. 814 00:43:21,170 --> 00:43:24,620 Na hivyo basi, tu kama wewe atafanya na HTML na PHP, 815 00:43:24,620 --> 00:43:28,420 unaweza kutaja pembejeo hizi maandishi, na unaweza kutaja jina yao, 816 00:43:28,420 --> 00:43:33,490 na kwamba jina kwamba kupata kupita ndani ya ombi kitu ndani ya chupa. 817 00:43:33,490 --> 00:43:36,960 >> Na kisha sisi Kuwasilisha kifungo kwamba anasema baada. 818 00:43:36,960 --> 00:43:40,760 Na hapa, idadi ni jina la kifungo, kwa sababu ni baada ya blog, 819 00:43:40,760 --> 00:43:42,700 lakini hapa, baada ya ni mbinu ya ombi. 820 00:43:42,700 --> 00:43:47,060 Basi hizo neno hilo hilo lakini kwa kweli lisilohusiana. 821 00:43:47,060 --> 00:43:48,460 Yeah 822 00:43:48,460 --> 00:43:54,800 >> Kurejea chatu kificho, wakati sisi kuitwa kujenga mbinu, 823 00:43:54,800 --> 00:43:57,702 taarifa hapa kwamba unaweza kweli bayana ndani ya njia 824 00:43:57,702 --> 00:44:00,650 mbinu ombi kwamba unataka kukubali, 825 00:44:00,650 --> 00:44:04,770 na hivyo hapa, mimi kutaja kwamba mimi tu wanataka kukubali njia Post. 826 00:44:04,770 --> 00:44:09,800 Hivyo, kama mimi kwa kweli kujaribu kutembelea ukurasa moja kwa moja, ambayo ni kwa kutumia ombi GET, 827 00:44:09,800 --> 00:44:11,700 itakuwa kuniambia "Mbinu hairuhusiwi." 828 00:44:11,700 --> 00:44:15,840 >> Na hivyo, una kurasa, aina ya kama huu kuunda ukurasa, ambayo mimi nina tu 829 00:44:15,840 --> 00:44:20,192 kweli kutumia kama njia ya fomu ya kupata kuwasilishwa, 830 00:44:20,192 --> 00:44:22,900 unaweza kutaja kwamba huna wanataka watu kuwa na uwezo wa kwenda huko 831 00:44:22,900 --> 00:44:25,650 moja kwa moja kupitia ombi GET, au kama wewe hakutaka, 832 00:44:25,650 --> 00:44:28,580 kwa sababu fulani, baada ya ombi, unaweza tu kutaja kupata hapa, 833 00:44:28,580 --> 00:44:32,720 lakini katika mfano huu, sisi tu wanataka Baada ya ombi kwenda nje. 834 00:44:32,720 --> 00:44:38,700 >> Hivyo, wakati create_post inaitwa, wakati sisi kutembelea kwamba kupitia Baada ya ombi, 835 00:44:38,700 --> 00:44:43,600 wakati wowote kwenda fulani Njia, kuna ombi hili kitu, 836 00:44:43,600 --> 00:44:46,640 na tulikuwa na kuagiza maombi juu sana, 837 00:44:46,640 --> 00:44:49,640 lakini kuna ombi hili kitu kwamba anapata kupita katika, 838 00:44:49,640 --> 00:44:53,210 na unaweza kupata data za fomu, ambayo moja kwa moja kupata kujazwa 839 00:44:53,210 --> 00:44:55,070 wakati kutuma ombi kutoka fomu. 840 00:44:55,070 --> 00:44:56,990 >> Na kisha, nini nadhani ni kweli baridi, ni 841 00:44:56,990 --> 00:45:02,840 ile namna kitu kwa kupata kupita katika, ni tu chatu kamusi kwamba 842 00:45:02,840 --> 00:45:10,560 Ina, kama wewe access-- hivyo hapa, hebu mimi kuvuta up HTML karibu na hiyo, tu 843 00:45:10,560 --> 00:45:17,670 hivyo unaweza kuwa na kwamba kama rejea, ndiyo, hivyo 844 00:45:17,670 --> 00:45:21,060 majina kwamba sisi kutaja hapa kwa nyanja mbalimbali, hivyo 845 00:45:21,060 --> 00:45:23,900 cheo na asilia, sisi kisha kutumia tu wale zaidi hapa 846 00:45:23,900 --> 00:45:27,110 kama fahirisi katika data za fomu. 847 00:45:27,110 --> 00:45:28,950 Hivyo hiyo ni super rahisi. 848 00:45:28,950 --> 00:45:33,320 >> Hivyo basi tunatoa wito post.create, ambayo kujenga na moja kwa moja kuingiza 849 00:45:33,320 --> 00:45:36,850 huu mpya baada kitu katika database. 850 00:45:36,850 --> 00:45:40,690 Na nadhani hii kujenga kazi hapa ni mfano wa jinsi ya kweli ya baridi 851 00:45:40,690 --> 00:45:44,900 nguvu chupa ni na kufanya kazi na hii, kwa sababu kama wewe walikuwa wakifanya kitu 852 00:45:44,900 --> 00:45:48,660 katika PHP, unaweza kuwa na kufanya mengi ya uthibitisho, 853 00:45:48,660 --> 00:45:51,730 ingekuwa kisha kuanzisha uhusiano database, 854 00:45:51,730 --> 00:45:55,210 ingekuwa kisha kutekeleza swala SQL, 855 00:45:55,210 --> 00:45:59,550 lakini hapa sisi tu hii nzuri post.create, ambayo tunaweza kisha tu 856 00:45:59,550 --> 00:46:01,520 kupata taarifa nje ya ombi kitu, 857 00:46:01,520 --> 00:46:05,370 na kisha kupita ndani ya mwezi baada ya kwamba sisi ni kujenga. 858 00:46:05,370 --> 00:46:07,850 >> Na kisha, mwisho kabisa Jambo tunataka kufanya, 859 00:46:07,850 --> 00:46:09,630 ni kuelekeza user kurudi nyumbani. 860 00:46:09,630 --> 00:46:13,020 Na hivyo sisi kutumia hii Chupa kuelekeza kazi. 861 00:46:13,020 --> 00:46:17,770 Na kitu ambacho tulikuwa na si kuonekana kabla, ilikuwa hii kazi URL. 862 00:46:17,770 --> 00:46:21,970 Hivyo URL kwa ajili ya kazi inakuwezesha kupita katika kweli jina 863 00:46:21,970 --> 00:46:26,090 ya kazi katika Python kanuni yako, badala ya njia fulani 864 00:46:26,090 --> 00:46:26,720 kuwa ni katika. 865 00:46:26,720 --> 00:46:32,107 >> Ili niweze kuwa na urahisi tu kama itaelekezwa mtumiaji kupunguza, 866 00:46:32,107 --> 00:46:37,050 ambayo itakuwa kutuma nyuma nyumbani, lakini kutumia URL kwa ajili ya kazi ni nzuri, 867 00:46:37,050 --> 00:46:39,990 kwa sababu kama mabadiliko ya eneo ambapo mambo ni, 868 00:46:39,990 --> 00:46:44,080 hivyo hebu kusema kwamba mimi mabadiliko nyumbani kuwa katika / nyumbani badala yake, 869 00:46:44,080 --> 00:46:47,040 hii itakuwa bado kisha kurudi / nyumbani, kwa sababu kwa kweli inakwenda na inaonekana hadi 870 00:46:47,040 --> 00:46:50,770 jina la kazi, na nitakupa nyuma URL kwa ajili hiyo. 871 00:46:50,770 --> 00:46:52,490 >> Hivyo, aina ya juu ya dhana kwamba uko 872 00:46:52,490 --> 00:46:55,489 zaidi uwezekano wa kubadili ambapo mambo ni, kuliko majina ya kazi. 873 00:46:55,489 --> 00:46:58,840 Unaweza kutumia hii kwa kweli nzuri URL kwa ajili ya kazi. 874 00:46:58,840 --> 00:47:02,470 Na jambo moja kuwa na ufahamu wa kuwa ni kidogo suala gumu, 875 00:47:02,470 --> 00:47:05,750 ni kwamba unafikiri anaweza tu piga kuelekeza juu ya URL kwa, 876 00:47:05,750 --> 00:47:10,600 lakini kwa kweli wote wa njia na kurudi aina fulani ya maandishi na HTML, 877 00:47:10,600 --> 00:47:14,360 kweli hivyo kuwa na kurudi kuelekeza simu. 878 00:47:14,360 --> 00:47:18,379 Vinginevyo, utapata kitu batili kuhusu si kurudi kamba, 879 00:47:18,379 --> 00:47:21,420 kwa sababu yote haya na kurudi kweli HTML unataka kutoa. 880 00:47:21,420 --> 00:47:26,980 >> Na hivyo, wakati wewe piga kuelekeza, ni maelekezo wewe na ukurasa, 881 00:47:26,980 --> 00:47:30,270 lakini kwa kweli anarudi HTML wewe haja ya kutekeleza kwamba kuelekeza. 882 00:47:30,270 --> 00:47:34,430 883 00:47:34,430 --> 00:47:37,110 Kurudi nyuma kwenye ukurasa wa nyumba. 884 00:47:37,110 --> 00:47:39,200 Hivyo tuna hizi maoni mawili tofauti. 885 00:47:39,200 --> 00:47:40,132 Tuna mtazamo nyumbani. 886 00:47:40,132 --> 00:47:41,590 Au, mimi nadhani ni lazima kusema templates. 887 00:47:41,590 --> 00:47:44,190 Tuna templates hizi mbili, template nyumbani ambayo 888 00:47:44,190 --> 00:47:48,500 maonyesho yote ya posts yetu, na basi tuna jambo hili tangazo, 889 00:47:48,500 --> 00:47:52,970 na unapobonyeza baada, unaendelea kwa njia mpya ndani ya chupa, 890 00:47:52,970 --> 00:47:55,920 lakini njia hiyo haina si lazima na template sambamba. 891 00:47:55,920 --> 00:47:59,290 892 00:47:59,290 --> 00:48:01,560 Huna kuona kitu chochote, lakini bado unaweza 893 00:48:01,560 --> 00:48:04,090 na kazi hii kwenda juu ya nyuma ya pazia. 894 00:48:04,090 --> 00:48:07,450 Na kisha kupata itaelekezwa nyuma kwa ukurasa wa nyumbani. 895 00:48:07,450 --> 00:48:12,230 Na dhahiri, ni rahisi kufanya kazi katika baadhi CSS nicer katika template 896 00:48:12,230 --> 00:48:15,580 na kufanya hii kuangalia mengi nicer, lakini wote wa mantiki kuu 897 00:48:15,580 --> 00:48:18,590 ni pale katika Python. 898 00:48:18,590 --> 00:48:20,020 >> Maswali yoyote kuhusu mfano huo? 899 00:48:20,020 --> 00:48:22,760 Najua kuna mengi ya mambo mbalimbali kinachoendelea huko, 900 00:48:22,760 --> 00:48:25,341 mambo mengi sisi alikuwa si kuonekana kabla, lakini kama kitu chochote. 901 00:48:25,341 --> 00:48:25,840 Naam. 902 00:48:25,840 --> 00:48:28,346 >> Watazamaji 1: Je, una kufanya kitu chochote maalum scrub data hiyo ni 903 00:48:28,346 --> 00:48:29,600 anatoka fomu? 904 00:48:29,600 --> 00:48:31,109 Niliona wewe tu alisema "kujenga," 905 00:48:31,109 --> 00:48:33,900 EZRA Zigmond: Yeah, hivyo hiyo ni kweli, hiyo ni hatua nzuri kwa kweli. 906 00:48:33,900 --> 00:48:36,350 Hivyo swali lilikuwa, je haja ya kuangalia na kuhakikisha 907 00:48:36,350 --> 00:48:39,190 kwamba data ni halali, na kufanya aina yoyote ya scrubbing 908 00:48:39,190 --> 00:48:41,840 kuhakikisha kwamba ni halali, kwa sababu kama unaweza kuona hapa, 909 00:48:41,840 --> 00:48:42,660 Mimi si kufanya hivyo. 910 00:48:42,660 --> 00:48:48,140 Basi hebu angalia nini kinatokea kama mimi baada ya kitu tupu. 911 00:48:48,140 --> 00:48:51,190 Kwa hiyo, kutakuwa na kweli tu kufanya tupu ya mwisho na kujaza DateTime. 912 00:48:51,190 --> 00:48:55,990 >> Hivyo katika hali halisi, wewe ingekuwa pengine wanataka kufanya kitu kama, 913 00:48:55,990 --> 00:49:04,749 labda kutaja kama cheo ni sawa na kamba tupu, basi si kufanya hivyo. 914 00:49:04,749 --> 00:49:07,290 Au, tu kufanya hivyo kama cheo ni si sawa na kamba tupu. 915 00:49:07,290 --> 00:49:10,330 Hivyo haina kweli moja kwa moja utunzaji wa kwamba scrubbing 916 00:49:10,330 --> 00:49:12,820 kwa wewe, hivyo bado haja ya kufanya hivyo. 917 00:49:12,820 --> 00:49:14,330 Yeah, swali zuri. 918 00:49:14,330 --> 00:49:18,497 >> Watazamaji 2: Je, ni scrub kwa mwema sindano? 919 00:49:18,497 --> 00:49:19,890 Unajua? 920 00:49:19,890 --> 00:49:22,830 >> EZRA Zigmond: Hopefully, peewee anafanya hivyo. 921 00:49:22,830 --> 00:49:25,830 Nadhani bila ya shaka itakuwa pretty maktaba mbaya kama hakuwa na kufanya hivyo. 922 00:49:25,830 --> 00:49:29,511 923 00:49:29,511 --> 00:49:32,690 Sijui hasa. 924 00:49:32,690 --> 00:49:34,820 Ningependa kuwa na kuangalia swala kwamba yanayotokana. 925 00:49:34,820 --> 00:49:38,980 Nadhani, kama mimi typed katika baada ya blog kwamba aina ya inaonekana 926 00:49:38,980 --> 00:49:46,370 kama mashambulizi SQL sindano, kitu kama hii, kama hii 927 00:49:46,370 --> 00:49:49,370 Ni kama uwanja password au kitu, unaweza kufanya kitu kama hiki. 928 00:49:49,370 --> 00:49:53,410 >> Nadhani itakuwa bado kupata halisi posted, 929 00:49:53,410 --> 00:49:59,200 lakini nadhani kuwa peewee haina kufanya aina fulani ya scrubbing ya data 930 00:49:59,200 --> 00:50:01,680 kabla ni kweli executes yake. 931 00:50:01,680 --> 00:50:04,510 >> Watazamaji 1: Hiyo shamba maandishi ni iliyoundwa na kuchukua Nakala wazi, sawa? 932 00:50:04,510 --> 00:50:05,710 >> EZRA Zigmond: Yeah, ni. 933 00:50:05,710 --> 00:50:06,465 Naam. 934 00:50:06,465 --> 00:50:09,590 Hivyo nadhani kwamba wote wa, hivyo hii ni tabia sahihi, ambayo kufanya hivyo, 935 00:50:09,590 --> 00:50:12,170 lakini nadhani kuwa peewee hopefully gani kufanya 936 00:50:12,170 --> 00:50:13,780 aina fulani ya ulinzi juu ya mwisho wao. 937 00:50:13,780 --> 00:50:16,090 Na kama alitaka kuangalia mara mbili kwamba, kuna 938 00:50:16,090 --> 00:50:19,530 njia wakati wewe kuzalisha swala. 939 00:50:19,530 --> 00:50:22,622 hivyo huna kwa nitafanya hivyo moja kwa moja. 940 00:50:22,622 --> 00:50:24,330 Ningependa kuwa na kuchukua kuangalia nyaraka, 941 00:50:24,330 --> 00:50:27,930 lakini unaweza kweli kuona SQL kwamba ni kuzalisha, 942 00:50:27,930 --> 00:50:30,840 na tuangalie kwamba, na kufanya kuhakikisha kwamba ni kuponyoka mambo. 943 00:50:30,840 --> 00:50:33,700 >> Sababu nyingine waweza wanataka kuangalia SQL 944 00:50:33,700 --> 00:50:37,920 kwamba peewee ni outputting, ni kama mambo yanaonekana kuwa kwenda kwa kweli polepole, 945 00:50:37,920 --> 00:50:41,090 unaweza kuchukua kuangalia na kuona nini ni kweli kufanya, kwa sababu ni wakati mwingine 946 00:50:41,090 --> 00:50:44,670 rahisi ajali kuongeza katika, njia ya kuandika hayo, 947 00:50:44,670 --> 00:50:47,880 unaweza ajali kuwa ni kuchagua database nzima ya kwanza, 948 00:50:47,880 --> 00:50:50,230 na kisha kufanya baadhi ya operesheni aina juu ya kwamba, wakati kweli 949 00:50:50,230 --> 00:50:51,320 maana ya kuchagua subset. 950 00:50:51,320 --> 00:50:53,560 >> Na hivyo, kama mambo si kabisa kwenda kulia, 951 00:50:53,560 --> 00:50:57,300 ni vizuri tuangalie ombi hiyo ni kweli kupata yanayotokana. 952 00:50:57,300 --> 00:50:57,800 Naam. 953 00:50:57,800 --> 00:51:02,100 >> Watazamaji 2: Wakati kwanza kuanza, kuweka katika bandari kama 5000. 954 00:51:02,100 --> 00:51:02,904 >> EZRA Zigmond: Naam. 955 00:51:02,904 --> 00:51:06,070 Watazamaji 2: Je, chaguo-msingi kwa peewee, au ni kitu ambacho unaweza kubadilisha? 956 00:51:06,070 --> 00:51:10,870 EZRA Zigmond: Ndiyo, hivyo bandari ni msingi kwa chupa. 957 00:51:10,870 --> 00:51:13,061 Kama wewe kukimbia bila kubainisha kitu chochote, 958 00:51:13,061 --> 00:51:14,310 itakuwa moja kwa moja kufanya hivyo. 959 00:51:14,310 --> 00:51:16,060 Naamini, Ningependa kuwa mara mbili kuangalia hii, 960 00:51:16,060 --> 00:51:19,130 lakini unaweza kutaja kwamba katika app.run, Nadhani unaweza kufanya kitu kama, 961 00:51:19,130 --> 00:51:19,629 bandari = 8080. 962 00:51:19,629 --> 00:51:22,375 963 00:51:22,375 --> 00:51:23,750 Hebu kutoa kwamba kujaribu halisi haraka. 964 00:51:23,750 --> 00:51:29,100 965 00:51:29,100 --> 00:51:32,230 Yeah, hivyo unaweza tu kutaja bandari = 8080, na itakuwa kukimbia huko, 966 00:51:32,230 --> 00:51:36,130 ambayo nadhani, kama alitaka kuendesha juu ya IDE, mimi si walijaribu hii nje, 967 00:51:36,130 --> 00:51:38,527 lakini nadhani kwamba kama wewe mbio ni juu bandari 8080, 968 00:51:38,527 --> 00:51:40,360 wewe d pengine kuwa na uwezo kupata server, 969 00:51:40,360 --> 00:51:41,870 tu kama wewe walikuwa kwa ajili ya tovuti. 970 00:51:41,870 --> 00:51:44,390 >> Yeah, lakini ni rahisi mabadiliko hayo kama wewe 971 00:51:44,390 --> 00:51:48,540 na aina yoyote ya bandari kama-usambazaji mambo ambayo unahitaji kufanya. 972 00:51:48,540 --> 00:51:50,410 >> Yoyote maswali mengine? 973 00:51:50,410 --> 00:51:50,916 Yeah? 974 00:51:50,916 --> 00:51:53,416 Watazamaji 1: Kwa hiyo, nikaona katika yako mifano ya kwamba, kama zilizotajwa, 975 00:51:53,416 --> 00:51:55,647 una bayana Mbegu kwa kila kitu. 976 00:51:55,647 --> 00:51:58,105 Je, kutokea kwa kujua, je, kwamba kufanya hivyo ni kweli ni rahisi kama wewe 977 00:51:58,105 --> 00:52:03,210 kuwa na kura ya SQLite database kwamba wanataka kutumia kwa moja programu ya mtandao, 978 00:52:03,210 --> 00:52:07,210 uweze tu kutaja kundi ya ndio tofauti katika mfano wako? 979 00:52:07,210 --> 00:52:11,620 >> EZRA Zigmond: Yeah, napenda kufungua kuwa hadi halisi haraka. 980 00:52:11,620 --> 00:52:17,570 Hivyo, wewe ni kusema, kama unataka kuwa rundo la tofauti kitu, labda 981 00:52:17,570 --> 00:52:22,670 kama na wanafunzi, kwa baadhi sababu, kitu kama hicho? 982 00:52:22,670 --> 00:52:26,870 Yeah, hivyo nadhani kwamba wewe bado, kila mfano 983 00:52:26,870 --> 00:52:30,652 ingekuwa bado wana haki Mbegu moja kwa ajili ya jambo hilo, 984 00:52:30,652 --> 00:52:32,610 lakini kama wewe alitaka kuwa mifano mbalimbali kwamba 985 00:52:32,610 --> 00:52:35,818 kuwa vitu database mbalimbali kwa ajili kwa hiyo, unaweza dhahiri kufanya hivyo. 986 00:52:35,818 --> 00:52:43,070 Hivyo, kama mimi umba mpya, kitu kama hii, 987 00:52:43,070 --> 00:52:47,000 na sasa hii ni mwanafunzi kuwa Inaonekana kama oddly baada ya blog, 988 00:52:47,000 --> 00:52:49,390 Mimi naweza bayana kwamba Mbegu ni sawa na db_2 hapa. 989 00:52:49,390 --> 00:52:51,390 Kwa hiyo, nadhani hiyo ni njia kuu unaweza kufanya hivyo. 990 00:52:51,390 --> 00:52:54,560 991 00:52:54,560 --> 00:52:56,200 >> Baridi. 992 00:52:56,200 --> 00:52:58,410 Yoyote maswali mengine? 993 00:52:58,410 --> 00:53:02,170 >> Hivyo tu kumaliza juu kidogo kidogo, hapa ni baadhi ya rasilimali, 994 00:53:02,170 --> 00:53:06,030 na slides hizi itakuwa posted online hivyo unaweza kweli kupata viungo hivi. 995 00:53:06,030 --> 00:53:08,500 Rasilimali bora ni kweli nyaraka kwa chupa 996 00:53:08,500 --> 00:53:09,930 na peewee wenyewe. 997 00:53:09,930 --> 00:53:12,940 Re kuandikwa vizuri, nadhani. 998 00:53:12,940 --> 00:53:18,180 Hivyo, tovuti chupa ni hapa, na wana quickstart mafunzo ambayo 999 00:53:18,180 --> 00:53:20,710 kutembea kwa njia ya sawa mambo ya kile kutembea kwa njia, 1000 00:53:20,710 --> 00:53:23,560 lakini kama unataka aina yoyote ya mapitio ya mambo ambayo mimi akaenda juu, 1001 00:53:23,560 --> 00:53:26,200 au wewe walidhani kwamba nilivyoeleza kitu katika njia utata, 1002 00:53:26,200 --> 00:53:28,390 wao itabidi mifano kama hiyo huko. 1003 00:53:28,390 --> 00:53:31,570 >> Peewee ina nyaraka, na wana quickstart mafunzo 1004 00:53:31,570 --> 00:53:34,650 kwamba huenda juu ya vigezo kuu kuwa wewe unataka kutumia. 1005 00:53:34,650 --> 00:53:38,900 Kwa hiyo, mambo mimi kuongelea kwa kipekee, na kubainisha defaults, 1006 00:53:38,900 --> 00:53:42,710 aina mbalimbali ya mashamba kwamba unaweza kutumia, wale ingekuwa wote kuwa huko. 1007 00:53:42,710 --> 00:53:44,690 >> Pia, kama una maswali kuhusu peewee, 1008 00:53:44,690 --> 00:53:47,530 na wewe baada yao kwenye stackoverflow, guy ambaye alifanya peewee kweli 1009 00:53:47,530 --> 00:53:49,500 unaendelea na majibu hayo wakati mwingine. 1010 00:53:49,500 --> 00:53:53,200 Kama una swali, hopefully yeye utakuwa na uwezo wa kujibu hilo, 1011 00:53:53,200 --> 00:53:54,867 kwa sababu yeye aliandika jambo zima. 1012 00:53:54,867 --> 00:53:56,700 Nadhani hiyo ni kila kitu Nilitaka cover. 1013 00:53:56,700 --> 00:53:58,930 Shukrani kwa kuja nje. 1014 00:53:58,930 --> 00:54:02,688