1 00:00:00,000 --> 00:00:00,499 2 00:00:00,499 --> 00:00:03,227 [Musika jotzen] 3 00:00:03,227 --> 00:00:04,705 4 00:00:04,705 --> 00:00:05,830 EZRA Zigmond: Kaixo, denek. 5 00:00:05,830 --> 00:00:08,020 Irteten gaur esker. 6 00:00:08,020 --> 00:00:10,660 Mintegi hau Python da " Web Flask aplikazioak. " 7 00:00:10,660 --> 00:00:14,510 >> Beraz, noa den hitz egitera zergatik pixka bat 8 00:00:14,510 --> 00:00:17,400 Baliteke Flask erabili egin nahi duzu Python web aplikazioak, alderantziz, 9 00:00:17,400 --> 00:00:21,556 beste batzuk esparruak daude, bezala Django, zein da gehien ezagun. 10 00:00:21,556 --> 00:00:24,330 Azpititulua da "eta peewee, "eta horrek zerbait da 11 00:00:24,330 --> 00:00:27,250 Nola buruz hitz egin dugu to datubaseak elkarreragin. 12 00:00:27,250 --> 00:00:29,610 Benetan polita egiten du. 13 00:00:29,610 --> 00:00:32,390 >> Beraz, hona hemen rundown azkar bat besterik ez zer gehiago joan nahi dut. 14 00:00:32,390 --> 00:00:35,520 Beraz, lehenik eta behin, diapositiba bat besterik ez hori quickstart izango da, 15 00:00:35,520 --> 00:00:38,530 hau da, guztia nola lortu sortu zure ordenagailuan. 16 00:00:38,530 --> 00:00:41,760 Noa erakutsiz hau nire tokiko Mac makinan, 17 00:00:41,760 --> 00:00:45,220 Hori besterik ez delako da, non egin dut aurretik, gehienak eroso nago, 18 00:00:45,220 --> 00:00:48,510 baina hau ez da behin betiko CD50 IDE posible. 19 00:00:48,510 --> 00:00:52,050 >> Beraz, horren ondoren, nahi dut aurkeztu Flask zer da, 20 00:00:52,050 --> 00:00:55,089 eta konbentzitu duzu zergatik behar duzu erabili da lehenik eta behin. 21 00:00:55,089 --> 00:00:56,880 Ondoren, azkar bat eman dut zer duzu adibide 22 00:00:56,880 --> 00:01:00,550 ahal Flask, adibidez azkar bat egin zer peewee ere egin dezakezu, 23 00:01:00,550 --> 00:01:05,010 eta, ondoren, erakutsiko dizu I más a osoa adibidez aplikazio 24 00:01:05,010 --> 00:01:07,520 bildu dut dugun oinez bidez elkarrekin dezake. 25 00:01:07,520 --> 00:01:10,040 >> Eta, azkenik, in azken diapositiba, daukat 26 00:01:10,040 --> 00:01:12,730 duzula begiratu baliabide batzuk Informazio gehiagorako online at. 27 00:01:12,730 --> 00:01:15,560 Hau ez da osoa Flask nola erabili tutoretza. 28 00:01:15,560 --> 00:01:18,140 Eta utzi Espero dut galderak egiteko denbora pixka bat. 29 00:01:18,140 --> 00:01:21,050 Edonork lokalean ikustea, besterik bezala, oihu erdian 30 00:01:21,050 --> 00:01:22,340 Edozein zalantza izanez gero. 31 00:01:22,340 --> 00:01:27,150 >> Beraz, instalazio azkar gauza, batera jarraitu nahi baduzu, 32 00:01:27,150 --> 00:01:29,240 edo hau eskuratu nahi baduzu zure makina propioa sortu, 33 00:01:29,240 --> 00:01:32,440 Egon Python 2.7.10 erabiliz noa. 34 00:01:32,440 --> 00:01:35,860 Flask lan egiten dituzten Python 3, baina gustatzen 35 00:01:35,860 --> 00:01:38,660 Python 2 erabiliz, ez da delako Zenbait Python paketeak 36 00:01:38,660 --> 00:01:40,910 ez 3-ekin lan oraindik. 37 00:01:40,910 --> 00:01:44,800 Duzu PIP instalatuko bada, horrek Python pakete kudeatzaile bat da, 38 00:01:44,800 --> 00:01:48,190 Uste dut zure Python bada handiago edo 2.7.9 berdina, 39 00:01:48,190 --> 00:01:52,220 Dagoeneko instalatu behar duzu, da pakete hauek instalatzeko super erraza. 40 00:01:52,220 --> 00:01:54,990 >> Ez PIP instalatu dezakezu Flask, pip instalatu peewee, 41 00:01:54,990 --> 00:01:58,600 Ohi sudo besterik exekutatu behar duzu beraz baimenak lan. 42 00:01:58,600 --> 00:02:01,080 Eta, erabiliz gero a super Python bertsio zahar, 43 00:02:01,080 --> 00:02:05,100 Zure Python eguneratzeko gomendatzen dut, edo EasyInstall erabiliz PIP instalatzeko. 44 00:02:05,100 --> 00:02:09,180 45 00:02:09,180 --> 00:02:11,120 Beraz, hurrengo galdera da, zer da Flask? 46 00:02:11,120 --> 00:02:13,280 Eta pentsatzen dut nik, lehen batean arrazoizkoa galdera nuen galdetu 47 00:02:13,280 --> 00:02:15,585 denbora luze bat da, zer web aplikazioa da? 48 00:02:15,585 --> 00:02:17,960 Hori delako hitz bat dudala uste asko bota inguruan 49 00:02:17,960 --> 00:02:19,240 dut ez dakit. 50 00:02:19,240 --> 00:02:22,340 Eta uste onena duten I Web aplikazio bat zer den adibidea, 51 00:02:22,340 --> 00:02:26,960 Benetan da CS50 Ogasun, non ez da benetan webgune bat besterik ez, 52 00:02:26,960 --> 00:02:29,320 baina zerbait duzula ezin Sort elkarreragin. 53 00:02:29,320 --> 00:02:31,736 Badira erabiltzaile-kontuak eta gauza ugari eta desberdinak. 54 00:02:31,736 --> 00:02:35,010 Beraz, non zehazki marraztu zer webgune bat da arteko lerroa, 55 00:02:35,010 --> 00:02:38,780 eta zer web aplikazioa da, moduko arbitrarioak, baina ideia asmatu dut, 56 00:02:38,780 --> 00:02:42,110 Web orri bat baino zerbait gehiago da eta aplikazio erabilgarria da. 57 00:02:42,110 --> 00:02:46,081 >> Beraz, Flask esparrua da Web aplikazioak Python erabiliz egiteko. 58 00:02:46,081 --> 00:02:48,330 Eta zorionez, amaierarako Hori, zuk konbentzitu egingo dut 59 00:02:48,330 --> 00:02:52,210 Egia esan, ezin duzu zerbait idatzi duten CS50 Ogasun bezalako Python, erabiliz zein I 60 00:02:52,210 --> 00:02:53,950 PHP baino askoz hobea, pertsonalki bezala. 61 00:02:53,950 --> 00:02:57,320 >> Beraz, Flask da, llaman a microframework, horren bidez, 62 00:02:57,320 --> 00:02:59,800 Esan nahi ote da simple, baina hedagarria. 63 00:02:59,800 --> 00:03:02,980 Beraz, besterik ez ditu behar duzuna, baina ezaugarri gehiago nahi izanez gero, 64 00:03:02,980 --> 00:03:04,522 erraza da ekartzea ere. 65 00:03:04,522 --> 00:03:06,480 Baina besterik ez delako bat microframework, ez du 66 00:03:06,480 --> 00:03:08,960 Esan nahi dela soilik proiektu txikiak. 67 00:03:08,960 --> 00:03:12,590 Lotura bat hemen dioen daukat Obama hori erabiliko Flask 2012. urtean 68 00:03:12,590 --> 00:03:14,410 bere kanpaina webgunean, eta horrek, zorionez, 69 00:03:14,410 --> 00:03:16,937 abal bat zerbait da. 70 00:03:16,937 --> 00:03:18,770 Baina gauza dela I benetan Flask buruz nahi 71 00:03:18,770 --> 00:03:22,401 dela, ez du benetan egin Edozein zuretzat erabakiak moduko. 72 00:03:22,401 --> 00:03:24,150 Just delako gaude Web apps buruz hitz egiten, 73 00:03:24,150 --> 00:03:26,940 Konparatu Ruby on daukat Rails eta Django, biak ere 74 00:03:26,940 --> 00:03:30,450 esparruak handiak dira, baina biek hipotesiak egiteko 75 00:03:30,450 --> 00:03:33,600 nola nahi duzun datu elkarreragin, 76 00:03:33,600 --> 00:03:36,900 nola zure aurkeztea nahi duzu aldiz, eta behin betiko ari dira 77 00:03:36,900 --> 00:03:38,850 duten alderdi onak. 78 00:03:38,850 --> 00:03:41,490 >> Adibidez, Ruby on Rails For erregistro-sistema aktibo horixe du, 79 00:03:41,490 --> 00:03:43,100 hau da, benetan polita izan horrela, datu elkarreragin, 80 00:03:43,100 --> 00:03:45,960 baina Ruby erabili nahi izanez gero Rails, zu moduko ziola lotuta. 81 00:03:45,960 --> 00:03:47,835 Baina Flask batekin, ez dut gisa zuk erakutsi peewee batera, 82 00:03:47,835 --> 00:03:49,830 edozein dela moduko erabili ahal izango duzu datu-basearen nahi duzu, 83 00:03:49,830 --> 00:03:53,980 eta bakarrik dezakezu tira horretan Flask sartu luzapen gisa. 84 00:03:53,980 --> 00:03:56,350 >> Beraz, horregatik dut benetan Flask bezala, da hori da 85 00:03:56,350 --> 00:04:01,170 ez da egin hipotesi zuretzat oinarritutako gauza on, ez duzu behar benetan. 86 00:04:01,170 --> 00:04:04,440 >> Beraz, zergatik Flask erabili duzu? 87 00:04:04,440 --> 00:04:08,230 Abantailak dira, ez besterik core benetan ezaugarriak ditu 88 00:04:08,230 --> 00:04:09,420 txertatua behar duzula. 89 00:04:09,420 --> 00:04:11,980 Beraz, ez duzu kezkatu gauza osoa sorta bat ulertzeko 90 00:04:11,980 --> 00:04:13,175 ez duzula benetan behar. 91 00:04:13,175 --> 00:04:15,060 Ez daukazu kezkatu dute Ezaugarri itzaliz buruz 92 00:04:15,060 --> 00:04:16,620 ez duzula benetan behar. 93 00:04:16,620 --> 00:04:21,082 >> Eta, esan dudan bezala, super da erraza gehitu gauza luzapenak 94 00:04:21,082 --> 00:04:21,790 ez duzula. 95 00:04:21,790 --> 00:04:24,700 Horietako batzuk, Flask ditu beren eguneroko euskarri izena. 96 00:04:24,700 --> 00:04:28,230 Beraz, ez Flask deitua dena admin, bertan admin hori islatzen 97 00:04:28,230 --> 00:04:32,060 panel hori Django ematen du, horietatik bat bisuala modu polita ematen dizu 98 00:04:32,060 --> 00:04:33,405 zure webgunean kudeatzeko. 99 00:04:33,405 --> 00:04:35,280 Baina, berriro ere, ez bazaude zerbait simple egiteko, 100 00:04:35,280 --> 00:04:39,550 seguruenik ez duzu admin handi bat behar panel, beraz, uste dut hori super polita. 101 00:04:39,550 --> 00:04:45,940 Eta desabantailak dira, hori energia gutxiago behar duzu out koadroan. 102 00:04:45,940 --> 00:04:49,660 Beraz, lehen aldiz irekitzen duzunean ireki Flask, eta zure Python programan, 103 00:04:49,660 --> 00:04:53,150 Flask hasita idatzi besterik ez duzu inportazio *, edo dena delakoa, 104 00:04:53,150 --> 00:04:55,957 ez zehazki guztia lortuko duzu ezaugarriak duzunean baliteke nahi. 105 00:04:55,957 --> 00:04:58,540 Eta beraz, gehiago esplizituki duzu Nahi dituzun ezaugarriak zerrendatu. 106 00:04:58,540 --> 00:05:01,990 Beraz, hori desabantaila bat da, baina ez dut uste duten web txikiak eraikitzeko 107 00:05:01,990 --> 00:05:04,782 I like aplikazioak noa den erakusteaz duzu, ez da hori benetan arazo bat. 108 00:05:04,782 --> 00:05:07,281 Eta zer azken gauza da Ustezko, esan zein typo bat da, 109 00:05:07,281 --> 00:05:10,240 da ez direla gutxiago normalizatua Flask nola erabili konbentzio, 110 00:05:10,240 --> 00:05:12,400 besterik ez daude, askotan bezala delako Hori profesionalki erabili da pertsona 111 00:05:12,400 --> 00:05:13,191 aldean Django izateko. 112 00:05:13,191 --> 00:05:16,380 Beraz, zerbait begiratu nahi baduzu, "Nola egin behar dut x" Django ere, 113 00:05:16,380 --> 00:05:18,190 baliteke zuk aurkitu da. 114 00:05:18,190 --> 00:05:20,260 >> Ez da, diseinu ona ereduak erabili ahal izango duzu, 115 00:05:20,260 --> 00:05:22,660 baina Flask batera, da Sort joan zure erara, 116 00:05:22,660 --> 00:05:24,850 Bat besterik ez delako liburutegi nahiko txikiak. 117 00:05:24,850 --> 00:05:27,100 Beraz, horiek dira desabantailak, baina uste dut 118 00:05:27,100 --> 00:05:29,370 da oraindik liburutegi ona da erabiltzeko. 119 00:05:29,370 --> 00:05:31,909 >> Hargatik salto besterik eskubidea Flask sartu. 120 00:05:31,909 --> 00:05:34,200 Hau ez da behin betiko joan tutoretza osoa izateko, 121 00:05:34,200 --> 00:05:37,480 baina zuk ideia bat emateko da Gauzak nola egituratu behar, 122 00:05:37,480 --> 00:05:40,790 eta, beraz, eroso sentitzen duzu off eta dokumentazioa begira 123 00:05:40,790 --> 00:05:42,570 eta egindako gehiago aurkitzeko. 124 00:05:42,570 --> 00:05:48,500 >> Beraz, utzi ireki me benetan bat Lehenengo adibide errazak, 125 00:05:48,500 --> 00:05:50,737 eta erakusteko zer dela itxura du, eta gero dugu 126 00:05:50,737 --> 00:05:52,070 hautsi du behera pixka bat gehiago. 127 00:05:52,070 --> 00:05:56,160 >> Beraz, hau hemen, utzi exekutatzen get me. 128 00:05:56,160 --> 00:06:06,800 129 00:06:06,800 --> 00:06:09,750 Beraz, gaur egun ez daukat nire eskaera lasterketak. 130 00:06:09,750 --> 00:06:15,910 Ireki Safari noa, eta nik nire ordenagailu honetan martxan. 131 00:06:15,910 --> 00:06:19,360 Beraz, ez dut besterik handiagoak hau egiteko. 132 00:06:19,360 --> 00:06:23,960 Baina localhost: 5000 133 00:06:23,960 --> 00:06:27,650 >> Eta orain, oraintxe, hori guztia ez da, betiere, webgune horretan sartzen zarenean, 134 00:06:27,650 --> 00:06:31,490 bistaratzen da "Kaixo Flask," eta hori ez da super erabilgarria, 135 00:06:31,490 --> 00:06:34,630 baina uste dut cool da hori fitxategi txiki honetan hemen, 136 00:06:34,630 --> 00:06:37,390 web zerbitzaria aktibatuta daukagu hori zerbait inprimatzeko. 137 00:06:37,390 --> 00:06:40,500 Beraz, dezagun benetan begiratu Bigarren a kodea at, 138 00:06:40,500 --> 00:06:43,080 eta pixka bat hautsi du behera. 139 00:06:43,080 --> 00:06:45,260 Tamainaren guztiontzat hemen ona da? 140 00:06:45,260 --> 00:06:51,560 >> Beraz, zorionez, Oraindik zertxobait eroso Python erabiliz. 141 00:06:51,560 --> 00:06:55,820 Naiz suposatuz at garela begiratu daiteke Python du eta horren bidez irakurtzeko. 142 00:06:55,820 --> 00:06:59,290 Bada buruzko zalantzarik izanez ezer, halaber, ezin dut hori baino gehiago joan. 143 00:06:59,290 --> 00:07:03,974 >> Beraz, lehen lerroan, Flask batetik, inportatu dugu, Flask kapitalarekin "F" 144 00:07:03,974 --> 00:07:06,140 horrek guztiak moduko da Ezaugarri gakoa behar duzula. 145 00:07:06,140 --> 00:07:08,890 Idazten ari zaren, betiere fitxategia eta Flask erabiliz, 146 00:07:08,890 --> 00:07:12,120 Hori inportatu nahi joan zaren, duten gauza nagusiak ditu, besterik ez delako. 147 00:07:12,120 --> 00:07:15,400 Hurrengo gauza egiten dugu, dugun deitu funtzioa Flask hau, besterik gabe, 148 00:07:15,400 --> 00:07:19,270 Aplikazio objektu bat sortzea da, eta zu Beti hori egin nahi du. 149 00:07:19,270 --> 00:07:25,960 >> Eta gero, behera saltoka joan beheko azkar, zati hori da hemen, 150 00:07:25,960 --> 00:07:28,760 'If_name _ == "_ main_"' zein da Python konbentzio moduko. 151 00:07:28,760 --> 00:07:32,750 Beraz, hau izango da zuk bakarrik bada exekutatu fitxategi hau zuzenean Python erabiliz exekutatu. 152 00:07:32,750 --> 00:07:36,040 Ondoren, app.run deitzen diogu, egingo den benetan aplikazioa hasiko dugu. 153 00:07:36,040 --> 00:07:39,570 >> Beraz, hori da egitura nagusia dela Edozein Flask aplikazioan izango duzu, 154 00:07:39,570 --> 00:07:48,550 da izango hau egin behar duzu Aplikazio = Flask (_name_), eta, ondoren, app.run. 155 00:07:48,550 --> 00:07:54,940 >> Beraz, bi gauza egin izan dut Hemen ere, ibilbide deitzen dugun daude. 156 00:07:54,940 --> 00:07:57,150 Beraz, hitz egin dezagun bideraketa pixka bat gehiago. 157 00:07:57,150 --> 00:07:58,430 Diapositiba itzuli egingo naiz. 158 00:07:58,430 --> 00:08:02,540 >> Beraz sakonena du Flask kontzeptu bideraketa da. 159 00:08:02,540 --> 00:08:06,750 Eta ideia da zuk funtzioak esleitzeko Python 160 00:08:06,750 --> 00:08:11,280 helbide partikularrak emateko Zure web orrialdean. 161 00:08:11,280 --> 00:08:13,930 Beraz, nahi duzunean ibilbide berri bat sortu nahi da, 162 00:08:13,930 --> 00:08:16,500 @ app.route hau erabili duzu Funtzio dekoratzaileak. 163 00:08:16,500 --> 00:08:19,770 Beraz, Ohituta bada Funtzio Python dekoratzaileak, 164 00:08:19,770 --> 00:08:24,160 Kontzeptu hau dela lets funtzio bat hartu duzu 165 00:08:24,160 --> 00:08:26,800 eta inguratzen beste zerbait. 166 00:08:26,800 --> 00:08:30,140 >> Beraz, benetan, dekoratzaileak zer honek, da behean funtzioa hartzen dela, 167 00:08:30,140 --> 00:08:33,409 eta informazio gehiago gehitzen da da, baina zer Flask benetan 168 00:08:33,409 --> 00:08:37,480 egin du hori gertatuko ez da super Ezinbestekoa da, baina zer da garrantzitsua, 169 00:08:37,480 --> 00:08:43,640 dela ibilbidea aurretik, zuk @ app.route hau jarri, eta, ondoren, 170 00:08:43,640 --> 00:08:46,480 Ibilbidearen puntu helbidea, Beraz, barra da zer egiten dugun 171 00:08:46,480 --> 00:08:48,360 ikusirik besterik zabaldu diogu web orrialdean. 172 00:08:48,360 --> 00:08:49,580 Beraz, hori homepage da. 173 00:08:49,580 --> 00:08:51,037 Besterik slash ibilbidea da. 174 00:08:51,037 --> 00:08:52,370 Eta, ondoren, funtzio hau duzu. 175 00:08:52,370 --> 00:08:54,453 Funtzio baten izena Nahi duzuna izan daiteke. 176 00:08:54,453 --> 00:08:56,930 Ez du izan behar, nahitaez, ibilbidea egin dute. 177 00:08:56,930 --> 00:08:59,440 Eta gero, edozein dela funtzioaren itzulera, 178 00:08:59,440 --> 00:09:01,730 funtzioak kate bat itzuli behar du. 179 00:09:01,730 --> 00:09:03,740 Eta katea ahal eduki HTML edo ezer, 180 00:09:03,740 --> 00:09:06,920 eta hori da benetan zer lortuko zure nabigatzailean HTML gisa itzuli zen, 181 00:09:06,920 --> 00:09:08,200 eta hori errendatuko da. 182 00:09:08,200 --> 00:09:12,030 >> Beraz, hori bera da hori adibide izan zen 183 00:09:12,030 --> 00:09:16,430 ran besterik ez dut, beraz, bisitatu slash dugunean, Hello World funtzio bat, deitzen da eta bertan 184 00:09:16,430 --> 00:09:20,470 Kate bat, Hello Flask itzultzen, eta hori lortzen pantailan inprimatu. 185 00:09:20,470 --> 00:09:27,290 >> Beraz, ez da beste adibide bat da, hau da, zarenean / kaixo, 186 00:09:27,290 --> 00:09:30,370 bistaratzen da Kaixo Word, bertan Egia esan, esan behar da, Hello World, 187 00:09:30,370 --> 00:09:32,010 baina dezagun asmoa zela intentional. 188 00:09:32,010 --> 00:09:35,140 Hargatik benetako azkar tira hori sortu. 189 00:09:35,140 --> 00:09:41,290 >> Beraz localhost / kaixo bazoaz, orain izango da beste zerbait inprimatu. 190 00:09:41,290 --> 00:09:45,680 Beraz, hori nola adibide azkar bat besterik ez da Bi ibilbide ezberdinak sor dezakezu. 191 00:09:45,680 --> 00:09:50,630 >> Beraz, orain arte, hori ez da super erabilgarria, Han ez da asko egin ahal izango duzu, 192 00:09:50,630 --> 00:09:55,360 Besterik ezin duzu hori guztia batera HTML orrien ezberdinak izatea, 193 00:09:55,360 --> 00:09:58,000 eta bisitatzen duzun jakin bat Orri kargatzen besterik ez da. 194 00:09:58,000 --> 00:10:00,864 Hargatik batzuk gehiago ikus-en erabilgarria gauza egin dezakezu. 195 00:10:00,864 --> 00:10:03,780 Beraz, gauza bat duzula izan Adibidez dudala bota nabaritu 196 00:10:03,780 --> 00:10:07,160 eman, ez dut app.run zuen (debug = True). 197 00:10:07,160 --> 00:10:09,580 Eta beraz, zer honek debug argumentu egiten da, 198 00:10:09,580 --> 00:10:14,600 denean zure web zerbitzaria exekutatzen duzun hori, Oraindik zure aplikazioa duzu, 199 00:10:14,600 --> 00:10:18,100 fitxategi bat aldatuz gero, izango da automatikoki Zerbitzu bat. 200 00:10:18,100 --> 00:10:21,160 >> Eta beraz, ez benetan izan nahi duzu berrabiarazi Python, hau da, super erabilgarria. 201 00:10:21,160 --> 00:10:24,020 Nik erakutsi ahal izango. 202 00:10:24,020 --> 00:10:26,960 Tira me my kodea bertan typo batera, 203 00:10:26,960 --> 00:10:30,420 eta asmoa typo han jarri zen nahita hezigarria helburuetarako. 204 00:10:30,420 --> 00:10:31,625 Hargatik gehitu atzera honetan. 205 00:10:31,625 --> 00:10:33,140 Beraz, orain esaten du Hello World. 206 00:10:33,140 --> 00:10:34,410 Gorde egingo dut. 207 00:10:34,410 --> 00:10:36,540 Eta tira dugu bada back up terminalean, ikusiko duzu 208 00:10:36,540 --> 00:10:39,520 esan hori berrabiatzea da, aldaketa bat detektatu delako, 209 00:10:39,520 --> 00:10:43,620 eta beraz, orain denean kargatu berriro orri hau dugu, Gauza zuzena inprimatu egingo du. 210 00:10:43,620 --> 00:10:45,630 >> Aratze super erabilgarria da. 211 00:10:45,630 --> 00:10:48,740 Era berean, edozein zalantza izanez gero hutsegite bat sort, beraz, 212 00:10:48,740 --> 00:10:54,370 utzi aplikazioaren kraskadura hau egin ninduen izatea da, ez kate bat itzuli. 213 00:10:54,370 --> 00:10:57,540 Beraz, dezagun besterik ez da itzultzeko ere ez arrazoi batzuk. 214 00:10:57,540 --> 00:11:00,810 Eta orduan, ikusten dudanean honetan orrialdea, besterik gabe, huts egingo du, 215 00:11:00,810 --> 00:11:04,465 baina zerbitzariak ez du besterik gabe, huts, hura benetan atzera super erabilgarria ematen dizu 216 00:11:04,465 --> 00:11:06,490 Denetik arrastorik gaizki joan. 217 00:11:06,490 --> 00:11:10,050 Eta zer da, benetan polita, hori Atzera arrastorik honetan urratsa edozein unetan, 218 00:11:10,050 --> 00:11:14,260 ireki izan duzu interaktibo bat Shell hemen, eta Ordena inprimatu zer 219 00:11:14,260 --> 00:11:17,780 aldagai begirada bat hartu nahi duzun. 220 00:11:17,780 --> 00:11:21,054 >> Eta beraz, arazketa da benetan kalkulatzen baliagarriak 221 00:11:21,054 --> 00:11:23,470 zer gertatzen da zure zerbitzari, baino besterik ikusten 222 00:11:23,470 --> 00:11:28,201 PHP zerbait 500 barne-a bezalako zerbitzaria error, hau da, super alferrikakoa. 223 00:11:28,201 --> 00:11:30,700 Gauza bat kontuan izan behar da, Hori da zure aplikazioa jarri baduzu online 224 00:11:30,700 --> 00:11:34,260 beraz, jendaurrean ikusgai da, zuk inoiz debug modua utzi nahi, 225 00:11:34,260 --> 00:11:37,320 Jende benetan delako kontsola dut hori erabiltzeko 226 00:11:37,320 --> 00:11:39,150 erakutsi kodea exekutatu duzu. 227 00:11:39,150 --> 00:11:42,120 >> Beraz, edozein bezala inprimatu ahal izango dute kode sekretuak han duzu, 228 00:11:42,120 --> 00:11:44,755 dute zehazki begiratu dezakezu zure webgunean nola lan egiten da. 229 00:11:44,755 --> 00:11:46,630 Beraz, benetan erabilgarria da probak egiteko, baina beti 230 00:11:46,630 --> 00:11:50,090 ziurtatu atera aurretik ezer argitaratzen online. 231 00:11:50,090 --> 00:11:56,640 >> Beraz, zerbait erabiltzen ari zarela PHP bezala, ez dute ideia hori da 232 00:11:56,640 --> 00:11:58,920 hori gainditu ahal izango duzu Web orrialde arteko informazio 233 00:11:58,920 --> 00:12:03,620 Informazio benetan jarriz URL, eta hori lortzeko, eskaera bat da ere, 234 00:12:03,620 --> 00:12:07,490 baina Flask ere, benetan dezakezu Sort horrelako zerbait egin, 235 00:12:07,490 --> 00:12:10,590 duela ibilbide bat edukitzea aldagai bat da barnean. 236 00:12:10,590 --> 00:12:14,090 >> Beraz, bada honetan Adibidez hemen pantailan, 237 00:12:14,090 --> 00:12:19,930 hori da, ibilbide bat egin behar dugu ('/ Kaixo /'), eta beraz, bisitatzen baduzu 238 00:12:19,930 --> 00:12:23,790 / Kaixo / zerbait, zerbait da benetan lortu betetako joan 239 00:12:23,790 --> 00:12:25,490 name aldagai sartu. 240 00:12:25,490 --> 00:12:27,850 Eta konturatu funtzioa duten ibilbidea dator 241 00:12:27,850 --> 00:12:31,302 parametro hartu ditu izendatzeko, benetan izango da, beraz, 242 00:12:31,302 --> 00:12:32,510 emateko funtzioa pasa. 243 00:12:32,510 --> 00:12:34,190 >> Eta gero, behin Oraindik funtzio horren barruan, 244 00:12:34,190 --> 00:12:36,420 atsegin hori tratatzeko dezakezu normal Python aldagai bat, 245 00:12:36,420 --> 00:12:39,650 eta, beraz, ondoren, izango da inprimatu Kaixo, eta hura 246 00:12:39,650 --> 00:12:42,000 egingo izenean bete erabiliz kate formatua. 247 00:12:42,000 --> 00:12:48,060 >> Beraz, zati aldakorra gehitzeko routing batera, xebroi markatzea erabiltzen dituzu. 248 00:12:48,060 --> 00:12:51,220 Eta, aukeran, erabili ahal izango dituzu zer ari converter bat deitzen. 249 00:12:51,220 --> 00:12:56,840 Eta, beraz, hau jartzen badituzu puntuek dituzten oharpen, 250 00:12:56,840 --> 00:13:00,015 zehaztu dezakezu, hori da Int bat, edo mugikor bat, edo bidea, 251 00:13:00,015 --> 00:13:01,640 eta automatikoki bihurtzeko. 252 00:13:01,640 --> 00:13:05,130 Halaber, bihurtze egin ahal izango duzu Python funtzioaren barruan, 253 00:13:05,130 --> 00:13:09,710 besterik Aktoreen bat erabiliz, baina batzuetan bada int bat dela ziurtatu nahi duzu, 254 00:13:09,710 --> 00:13:12,080 hori jarri ahal izango duzu bihurtze han ere erabakiko du. 255 00:13:12,080 --> 00:13:15,930 >> Hargatik, tira adibide bat arau aldagai batzuk. 256 00:13:15,930 --> 00:13:21,480 Beraz, hemen, hau bera oinarrizko ditu Flask import from the egitura 257 00:13:21,480 --> 00:13:25,030 Flask, aplikazio = Flask (_name_), eta ondoren, bukaeran da martxan. 258 00:13:25,030 --> 00:13:28,050 Bi horiek baino gehiago ditugu aldakorreko ibilbide hemen. 259 00:13:28,050 --> 00:13:29,900 Eta lehena, da Bat egin dudala erakutsi 260 00:13:29,900 --> 00:13:34,230 diapositiba, hain zuzen, hori ere kate baten izena hartzen duen besterik 261 00:13:34,230 --> 00:13:35,650 eta inprimatu egingo Kaixo, izena. 262 00:13:35,650 --> 00:13:41,410 >> Eta gero, bigarrenean bihurtze erabiltzen du bat. 263 00:13:41,410 --> 00:13:44,690 Beraz, hau automatikoki bihurtzen da int bat, eta, ondoren bikoiztu int du, 264 00:13:44,690 --> 00:13:46,150 eta inprimatu dela. 265 00:13:46,150 --> 00:13:48,220 Eta, ez dugu inolako egin bere baitan bihurtze 266 00:13:48,220 --> 00:13:49,594 Flask arduratuko baita delako. 267 00:13:49,594 --> 00:13:53,181 Hargatik lasterketak honetan. 268 00:13:53,181 --> 00:13:54,930 When Flask bat duzu Aplikazio lasterka, 269 00:13:54,930 --> 00:13:58,440 Kontrolatzeko-C dezakete bertan daudelarik zerbitzari exekutatzen gelditzeko. 270 00:13:58,440 --> 00:14:02,420 Eta gero, aldagai ihes egingo dut. 271 00:14:02,420 --> 00:14:11,740 >> Hargatik joan localhost / kaixo / ezra joan eta zorionez, hau kaixo esan dit. 272 00:14:11,740 --> 00:14:14,530 273 00:14:14,530 --> 00:14:20,310 >> Beraz, hartu nire izenean da, aldagai batean ibilbidea, eta bete du hemen ere. 274 00:14:20,310 --> 00:14:23,950 Beraz, era berean, azkar bat erakutsi dut bikoiztea adibide. 275 00:14:23,950 --> 00:14:28,600 Beraz bazoaz to / bikoitza / 3, egingo 6 inprimatu. 276 00:14:28,600 --> 00:14:31,440 Beraz, hau hartu arretaren guretzat bihurtzeko. 277 00:14:31,440 --> 00:14:34,190 >> Beraz, ere egin dezakezu berarekin karroza, eta zerbait berezia, 278 00:14:34,190 --> 00:14:37,530 antzeko zerbait zehaztu behar baduzu bide bat, hori barrak onartu aukera ematen dizu, 279 00:14:37,530 --> 00:14:39,155 baina horrek ez luke arazo bat izan ohi da. 280 00:14:39,155 --> 00:14:41,480 281 00:14:41,480 --> 00:14:43,820 Orain arte ez dugu, oraindik ere, besterik ez dira itzuli 282 00:14:43,820 --> 00:14:46,320 kateak, eta hori ez da oso interesgarria. 283 00:14:46,320 --> 00:14:48,730 >> Egia esan, ezin dugu itzultzeko literal HTML katea. 284 00:14:48,730 --> 00:14:54,322 Beraz, kode zerbait sartu ahal izango dugu antzekoak b-etiketa da lodia egiteko, 285 00:14:54,322 --> 00:14:56,030 baina denbora gehien duzu Egia esan, ez al 286 00:14:56,030 --> 00:14:58,420 HTML kodea idaztea izango da Zure Python kodea ere. 287 00:14:58,420 --> 00:15:01,940 Benetan narratsa daukala, eta ez da une egokia da. 288 00:15:01,940 --> 00:15:06,430 >> Flask ahalbidetzen bereizteko gurekin etorri Zer ari Template deritzo sartu HTML, 289 00:15:06,430 --> 00:15:09,467 eta pentsatzen ari zaren, hala bada MVC eredua dagokionez 290 00:15:09,467 --> 00:15:11,550 Oraindik ez duzula ezagutzen, zorionez, ez lan egitea 291 00:15:11,550 --> 00:15:15,520 CS50 Ogasun pixka bat, Python fitxategien pentsa dezakezu 292 00:15:15,520 --> 00:15:19,430 Controller, non gehiago izateaz gain edozer elkarreraginean daude 293 00:15:19,430 --> 00:15:20,970 Datu eredu izan ditzakezu. 294 00:15:20,970 --> 00:15:24,900 >> Eta gero egindako deia luzatu diete Views eta informazio View horretara pasatzen 295 00:15:24,900 --> 00:15:28,120 den informazioa bete HTML hasi behar duten. 296 00:15:28,120 --> 00:15:30,490 Eta horiek Views deitzen dugun klasean Templates dira. 297 00:15:30,490 --> 00:15:35,280 >> Beraz Flask Python beste erabiltzen du modulua automatikoki geratuko da 298 00:15:35,280 --> 00:15:38,620 instalatu denean Pip instalatu duzun Flask Jinja, izeneko 299 00:15:38,620 --> 00:15:40,885 lets horiek gehitzen duzunean HTML oharpenak 300 00:15:40,885 --> 00:15:45,140 ikusten duzu pantailan, aukera ematen dizu baldintzazkoak bezalako gauzak jartzea! 301 00:15:45,140 --> 00:15:47,230 eta HTML sartu begiztak. 302 00:15:47,230 --> 00:15:51,140 >> Beraz, nola duzun bezala pixka bat ikusten da PHP erabili daitezke HTML fitxategi batean, 303 00:15:51,140 --> 00:15:57,380 baina hori besterik ez denean matrazea zerbitzari balioko du gora HTML fitxategiak orduan, 304 00:15:57,380 --> 00:16:01,610 templating motor hau exekutatu izango da eta honen bidez analizatu eta gauzak bete. 305 00:16:01,610 --> 00:16:06,650 Beraz Flask render_template funtzioa du behealdean duzula ikusiko hemen. 306 00:16:06,650 --> 00:16:14,300 Eta beraz, orri honetara, hura hello.html Txantiloi hau lekarkiokeena, 307 00:16:14,300 --> 00:16:16,407 eta, ondoren, HTML orri hau bete. 308 00:16:16,407 --> 00:16:18,990 Hargatik errealean hau exekutatu nahiko luke azkar, eta ikusi zer itxura, 309 00:16:18,990 --> 00:16:21,198 eta gero baten bidez joan naiz xehetasun gehiago pixka. 310 00:16:21,198 --> 00:16:25,380 311 00:16:25,380 --> 00:16:30,260 Beraz, zure Txantiloiak joan txantiloietara karpeta batean joan. 312 00:16:30,260 --> 00:16:33,980 Automatikoki barruan begiratu Txantiloiak Txantiloi horretarako karpetan. 313 00:16:33,980 --> 00:16:35,615 Hargatik ireki honetan eman. 314 00:16:35,615 --> 00:16:47,350 315 00:16:47,350 --> 00:16:50,005 Beraz, templating adibidez exekutatu dut. 316 00:16:50,005 --> 00:16:52,820 317 00:16:52,820 --> 00:17:03,660 >> Beraz, joan nintzen / kaixo / ezra nahi izanez gero, izugarria dauka, 318 00:17:03,660 --> 00:17:05,930 obnoxious karpa etiketa hori jarri dut. 319 00:17:05,930 --> 00:17:08,050 Oso polita da, oso dinamikoa. 320 00:17:08,050 --> 00:17:09,349 Fan handi bat naiz. 321 00:17:09,349 --> 00:17:13,900 Baina zer gertatzen da Besterik ez dut, / kaixo nahi? 322 00:17:13,900 --> 00:17:15,220 Beraz, besterik ez dio Hello World. 323 00:17:15,220 --> 00:17:17,678 Ez nuen pasatzen da izen bat, eta bete ere automatikoki. 324 00:17:17,678 --> 00:17:22,050 Beraz, ikus dezagun nola egin zuen, eta nola karpa hori kendu ahal izango dugu, agian. 325 00:17:22,050 --> 00:17:26,240 >> Beraz, hemen, hau da Ordena adibide interesgarri bat, 326 00:17:26,240 --> 00:17:29,101 Zara nola switch ezagutzen bada adierazpenak hizkuntza batean lan egiteko. 327 00:17:29,101 --> 00:17:31,350 Esan hau da Ordena bezala, bidez erorketa baten moduko hori, 328 00:17:31,350 --> 00:17:34,266 non benetan bi erantsita duzu funtzio bera ibilbide ezberdinak. 329 00:17:34,266 --> 00:17:41,190 Beraz, / kaixo ibilbidea erantsi ditugu eta du / kaixo / name Kaixo ibilbidea, 330 00:17:41,190 --> 00:17:45,130 eta zehaztu dugu using-- Python aukera ematen dizu Zehaztu funtzio lehenetsia argumenturik 331 00:17:45,130 --> 00:17:48,300 beraz, bada ez izen ez da hain joan gara, besterik / kaixo, 332 00:17:48,300 --> 00:17:50,680 automatikoki iragazi egingo da izenari ere ez da berdina. 333 00:17:50,680 --> 00:17:55,010 >> Beraz, ondoren, errendatu gara Name = Izen bereko txantiloia, 334 00:17:55,010 --> 00:17:59,510 beraz, izango da izen parametroan pasa ezazu izen funtzioak parametro honen berdina, 335 00:17:59,510 --> 00:18:00,730 Txantiloi sartu. 336 00:18:00,730 --> 00:18:04,040 Hori oraindik ez du argitu nola da Hello World inprimatu ala ez erabakitzeko, 337 00:18:04,040 --> 00:18:05,100 edo nire izena inprimatu. 338 00:18:05,100 --> 00:18:08,050 Beraz, dezagun benetan begiratu Txantiloi bertan sartu, 339 00:18:08,050 --> 00:18:11,610 ikusi eta non hori datozen. 340 00:18:11,610 --> 00:18:18,680 >> Beraz, Txantiloi honen barruan, dugu benetan baldintzapeko logika batzuk izan, 341 00:18:18,680 --> 00:18:20,580 pertsona batzuk litzateke argudiatzeko, benetan 342 00:18:20,580 --> 00:18:23,730 Ez luke baldintzapeko asko izan logika zure Template bere baitan. 343 00:18:23,730 --> 00:18:26,310 Barruan gehiago izan behar da Controller, baina adibide honetan 344 00:18:26,310 --> 00:18:27,476 Zerbait nahiko txikia da. 345 00:18:27,476 --> 00:18:31,060 Hortaz, hona hemen, egiaztatu dugu, izen bada, beraz, name bada ez da bat ere ez da berdina, 346 00:18:31,060 --> 00:18:33,130 izen bat da, benetan bada gainditu, eta gero egingo dugu 347 00:18:33,130 --> 00:18:36,210 Kaixo esateko, izen eta goiburua eta karpa, 348 00:18:36,210 --> 00:18:41,490 HTML normal hori guztia, bestela, ez dugu inprimatu Kaixo, World besterik normalean. 349 00:18:41,490 --> 00:18:45,820 Beraz, pare bat gauza hemen nabarituko templating du Ideien buruz, 350 00:18:45,820 --> 00:18:49,110 dela, horiek guztiak baldintzapeko adierazpenak, 351 00:18:49,110 --> 00:18:54,475 Sort nahi nola PHP dugu PHP batzuk txertatu nahi duzun, 352 00:18:54,475 --> 00:18:58,380 Galdera baino gutxiago-erabili duzu marka, ordenatzeko analogoa da hemen 353 00:18:58,380 --> 00:19:00,140 nirekin {%. 354 00:19:00,140 --> 00:19:02,130 >> Beraz, hemen, gure baldintzapeko kodea ditugu. 355 00:19:02,130 --> 00:19:05,920 Eta gero, zuk benetan nahi literalki zerbait ebaluatzeko, eta inprimatu 356 00:19:05,920 --> 00:19:08,710 it out pantailara, zuk the giltza bikoitza erabili. 357 00:19:08,710 --> 00:19:12,310 Hortaz, hona hemen giltza bikoitz, eta zehaztu dugu izena, 358 00:19:12,310 --> 00:19:15,500 beraz, horren barruan, ebaluatu egingo da aldagai izena, zein 359 00:19:15,500 --> 00:19:18,860 onartu zen urtean hasita template funtzioa errendatu, 360 00:19:18,860 --> 00:19:21,484 eta ez bakarrik inprimatzeko baino out, dugu got horiek kentzeko bada, 361 00:19:21,484 --> 00:19:23,150 litzateke besterik hitza inprima "name". 362 00:19:23,150 --> 00:19:26,340 Beraz, zerbait ikusi ahal izateko da. 363 00:19:26,340 --> 00:19:29,792 >> Beraz, beste gauza bat oharra da, guk 364 00:19:29,792 --> 00:19:31,500 erabili nahi render_template funtzioa, 365 00:19:31,500 --> 00:19:34,490 Egia esan, ez dugu nahi inportatu egiten Flask from esplizituki. 366 00:19:34,490 --> 00:19:36,915 Eta horren adibidea da Flask of modularitatea du, 367 00:19:36,915 --> 00:19:39,290 Ez duzula izan inportatu ez duzu hori gauza. 368 00:19:39,290 --> 00:19:41,290 Besterik ez dezakezu ekarri funtzio benetan 369 00:19:41,290 --> 00:19:43,450 Zer behar da, hau da, batzuetan polita, beraz, ez duzu 370 00:19:43,450 --> 00:19:46,560 Funtzio horiek guztiak izan behar inguruan eserita ez zarela erabiltzen ari, 371 00:19:46,560 --> 00:19:49,730 baina, aldi berean, ahaztu duzu zuk hori bada render_template inportatu behar, 372 00:19:49,730 --> 00:19:52,660 baliteke zuk abisua jasotzen Hori al dakizu hori buruz utziko. 373 00:19:52,660 --> 00:19:56,700 Beraz, hori templating da. 374 00:19:56,700 --> 00:20:01,680 >> Beraz, agerian dugu nola den web orrietan sinpleak egiteko, 375 00:20:01,680 --> 00:20:04,947 eta logika apur bat gehiago gehitzeko da, aldagai routing dagokionez. 376 00:20:04,947 --> 00:20:08,280 Oinarritutako gauza desberdinak egiten duzun aukera dago zer URL joan nahi, eta, gainera, gero, eman 377 00:20:08,280 --> 00:20:11,950 zentzu HTML pixka bat gehiago zenbat gauza bihurtzeko hartu nahi duzu dagokionez. 378 00:20:11,950 --> 00:20:14,210 Ez daukazu guztiak jarri Zure HTML zure Python ere, 379 00:20:14,210 --> 00:20:16,640 baina nahiko askoz for Web aplikazio guztietan, 380 00:20:16,640 --> 00:20:21,480 Nolabaiteko nahi ari zaren joan Datu-ereduaren berarekin lotutako. 381 00:20:21,480 --> 00:20:25,560 >> Eta beraz, tradizioz, hau litzateke SQL datu bat antzeko zerbait izan. 382 00:20:25,560 --> 00:20:30,280 Eta besterik elkarreragin dezakezu SQL zuzenean. 383 00:20:30,280 --> 00:20:32,190 Python ditu, uste dut deitzen. 384 00:20:32,190 --> 00:20:33,040 SQLite 3. 385 00:20:33,040 --> 00:20:38,454 Zuk besterik inporta ditzake SQLite 3 eta SQL kontsultak zuzenean exekutatu, 386 00:20:38,454 --> 00:20:40,870 baina ez dut zuri buruzko jakin, baina ez dut nahi, besterik ez, 387 00:20:40,870 --> 00:20:42,750 idatziz SQL kontsultak. 388 00:20:42,750 --> 00:20:45,350 Benetan jende asko izaten luze eta konplexua. 389 00:20:45,350 --> 00:20:49,180 >> Eta, beraz, zerbait Erabili nahi dudana da zer da 390 00:20:49,180 --> 00:20:53,610 ORM bat, hau da, bezala ezagutzen objektu-erlazionalak mapping. 391 00:20:53,610 --> 00:20:56,890 Eta bat-puntua objektu-erlazionalak mapping, 392 00:20:56,890 --> 00:21:00,100 da, ez direla bi ezberdinak Modu duzu datu pentsatu daiteke. 393 00:21:00,100 --> 00:21:03,240 >> Beraz, adibide Malan Irakaslea ohi 394 00:21:03,240 --> 00:21:07,660 klasean erabiltzen ditu, Excel taula, non da Errenkada horiek eta zutabe horiek duzu, 395 00:21:07,660 --> 00:21:10,210 eta hori da benetan baliagarriak nola SQL saltzen diguten 396 00:21:10,210 --> 00:21:13,170 eta nola elkarreragin berarekin, baina Egia esan, hori da beste modu 397 00:21:13,170 --> 00:21:16,390 erabilgarria pentsatu batzuetan, Klaseak eta objektuak dagokionez. 398 00:21:16,390 --> 00:21:20,420 >> Beraz pentsatzeko ordez taula bakoitzaren edukitzea 399 00:21:20,420 --> 00:21:23,040 Lerro honetan duela zenbait Informazio, benetan dezakezu 400 00:21:23,040 --> 00:21:26,100 pentsatu ahal izateaz gain mahai bakoitzean mota bat, 401 00:21:26,100 --> 00:21:29,810 eta gero instantzia guztietan Klase propietate batzuk ditu. 402 00:21:29,810 --> 00:21:35,110 Beraz, adibide honetan, instantzia klasearen taulako errenkada dira, 403 00:21:35,110 --> 00:21:37,490 eta, ondoren, Jabetza bakoitzak litzateke mahai zutabe bat izan. 404 00:21:37,490 --> 00:21:40,840 >> Beraz, ORM etorri zait gustatzen erabili da peewee deitzen. 405 00:21:40,840 --> 00:21:43,520 Da benetan txiki, ordenatzeko Flask bezala. 406 00:21:43,520 --> 00:21:46,760 Ondo joan direla elkarrekin uste dut, baina badira beste ORMs asko 407 00:21:46,760 --> 00:21:47,730 hori erabili ahal izango duzu. 408 00:21:47,730 --> 00:21:52,180 One more popular bat da SQLAlchemy bezala ezagutzen, 409 00:21:52,180 --> 00:21:56,050 eta ezin dut gogoratzen zergatik I jatorriz SQLAlchemy baino peewee aukeratu zuen, 410 00:21:56,050 --> 00:21:58,311 edo zuk zergatik dut esango nuke Uste onena bat da, 411 00:21:58,311 --> 00:22:01,060 baina ari gara hau erabili joan bat nola erabiltzen den ezagutzen dudalako. 412 00:22:01,060 --> 00:22:04,760 >> Beraz, galdera da, zergatik behar ORM bat erabiltzen du traba, 413 00:22:04,760 --> 00:22:07,552 Horren ordez, besterik gabe, zuzenean SQL kontsultak idazten? 414 00:22:07,552 --> 00:22:09,760 Eta, kasu onena dela uste dut, da ez duzula benetan 415 00:22:09,760 --> 00:22:11,356 SQL kontsultak idatzi behar. 416 00:22:11,356 --> 00:22:14,480 Askoz ere errazagoa da, erakutsi dut gisa, to Aukeraketa bezalako gauzak egin, txertatze 417 00:22:14,480 --> 00:22:16,157 ezabatzeko, batez ere, taulak sortzea. 418 00:22:16,157 --> 00:22:17,990 Askoz errazagoa Klase egitura bat idatzi, 419 00:22:17,990 --> 00:22:22,250 da egitura baino bat sortu Mahai-adierazpena, baina gauza bat 420 00:22:22,250 --> 00:22:25,710 jakitun izan da, hau da ORM du saiatuko da 421 00:22:25,710 --> 00:22:28,640 Irudikatu zer gehien SQL kontsulta eraginkorragoa izango litzateke, 422 00:22:28,640 --> 00:22:30,110 baina, batzuetan, oker daukala. 423 00:22:30,110 --> 00:22:32,660 >> Eta Oraindik batez ere database handi batekin lanean, 424 00:22:32,660 --> 00:22:35,557 Kontsulta bat nabarituko ahal izango duzu Hori izango da azkar exekutatzen behar, 425 00:22:35,557 --> 00:22:36,640 benetan luzatzen ari da. 426 00:22:36,640 --> 00:22:40,164 Eta kanpaia azpian begiratzen baduzu nola at ORM da hori interpretatzeko SQL sartu, 427 00:22:40,164 --> 00:22:42,080 beharreko zerbait egiten zitekeen benetan barregarria, 428 00:22:42,080 --> 00:22:44,371 besterik delako Sort Zure asmo oker Gestured. 429 00:22:44,371 --> 00:22:48,080 Eta, han aldiz non egon Izan dut jaramonik ez egiteko, eta besterik 430 00:22:48,080 --> 00:22:52,429 exekutatu nire kabuz SQL kontsultak, besterik modu bitxi bat da analizatzean izan zelako. 431 00:22:52,429 --> 00:22:54,220 Beraz, ez da batzuk Buruak, besterik gabe, modu batean 432 00:22:54,220 --> 00:22:58,680 biltzen dela zure SQL sartu behera adierazpenak. 433 00:22:58,680 --> 00:23:06,200 >> Beraz, goazen azkar begiratu super at datu-eredu baten adibide sinple bat 434 00:23:06,200 --> 00:23:07,350 baliteke erabiltzen dituzu. 435 00:23:07,350 --> 00:23:11,880 Beraz, hau da Python kodea, eta beraz, Egin nahi duzun lehenengo gauza da 436 00:23:11,880 --> 00:23:12,950 peewee inportazio *. 437 00:23:12,950 --> 00:23:15,850 Beraz, Flask ez bezala, bertan duzu banakako modulu horiek guztiak, 438 00:23:15,850 --> 00:23:18,125 eta Flask inportatu nahi, eta Txantiloi bat, eta beste batzuek idatzi 439 00:23:18,125 --> 00:23:20,690 geroago ikusiko dugun, peewee batetik, Besterik ezin duzu dena inporta, 440 00:23:20,690 --> 00:23:22,290 liburutegi nahiko txiki bat delako. 441 00:23:22,290 --> 00:23:26,490 >> Beraz, egin nahi duzun lehenengo gauza da, benetan datu-base objektu hau sortzeko. 442 00:23:26,490 --> 00:23:31,212 Beraz, behar duzu db = SqliteDatabase, eta, ondoren, zure datu-basearen izena da. 443 00:23:31,212 --> 00:23:33,170 Eta, hori benetan datu-base objektu bat sortzeko 444 00:23:33,170 --> 00:23:36,230 elkarreragin dezake, peewee batera. 445 00:23:36,230 --> 00:23:40,570 >> Eta gero, benetako daukagu eredu hori sortu nahi dugu. 446 00:23:40,570 --> 00:23:42,470 Beraz, mahai sortu nahi dugu. 447 00:23:42,470 --> 00:23:47,270 Beraz, peewee barruan, klase bakoitzak Bere mahai Egin zure datu-basearen barruan. 448 00:23:47,270 --> 00:23:52,800 Beraz, klase guztiek base eredua oinordetzan, 449 00:23:52,800 --> 00:23:55,960 eta kapital M eredua da hori peewee definitutako zerbait. 450 00:23:55,960 --> 00:24:02,162 >> Beraz, zure ereduen guztiak egin beharko lukete Beren superclass altuena gisa oinordetzan, 451 00:24:02,162 --> 00:24:04,620 batetik oinordetzan behar dute eredua, baina zer da benetan cool, 452 00:24:04,620 --> 00:24:07,610 da zuk benetan izan daiteke zure modeloak elkarrengandik oinordetzan. 453 00:24:07,610 --> 00:24:10,530 Eta denbora asko, zure datuen ereduak ez du nahitaez 454 00:24:10,530 --> 00:24:13,754 herentzia hierarkia polit bat egiteko, baina Nondik dute non egin, benetan polita da, 455 00:24:13,754 --> 00:24:15,920 eredua izan delako elkarrengandik berezko. 456 00:24:15,920 --> 00:24:19,710 >> Beraz, klase honetan definitu dugu 'Ikasle,' eredu bat KDEko, 457 00:24:19,710 --> 00:24:21,170 eta hiru ezaugarriak ditu. 458 00:24:21,170 --> 00:24:24,080 ID bat du, hau da, PrimaryKeyField bat, eta horrek 459 00:24:24,080 --> 00:24:26,920 hori baldin eta zerbait da peewee arabera, izen CharField bat da, 460 00:24:26,920 --> 00:24:28,490 eta nota bat IntegerField da. 461 00:24:28,490 --> 00:24:32,260 Beraz, hau daiteke edo ez izan nola CS50 benetan gordetzen guztiak 462 00:24:32,260 --> 00:24:33,650 Ikasleen kalifikazio. 463 00:24:33,650 --> 00:24:36,060 Ez da, baina, hau da, nola egin nahi nuke. 464 00:24:36,060 --> 00:24:37,920 >> Eta gero badu, barruan Klase honetan, eta honi 465 00:24:37,920 --> 00:24:41,620 zerbait egin dezakezu Python, habiaratutako klaseak izan dezakezu. 466 00:24:41,620 --> 00:24:43,920 Eta hau zerbait da hori beharrezkoa peewee arabera. 467 00:24:43,920 --> 00:24:47,250 Beraz, klase Idatzi honetan, egin behar duzu datu-basea dela zehaztu behar 468 00:24:47,250 --> 00:24:49,830 objektuaren berdina Goian sortu genuen hori. 469 00:24:49,830 --> 00:24:54,339 Eta hau dio fitxategia zer mahai hau da benetan behar jasotako joan. 470 00:24:54,339 --> 00:24:57,130 Beraz, hori duzu zerbait da to barruan zure ereduen guztiak egin. 471 00:24:57,130 --> 00:24:59,380 Besterik ez duzu zehaztu Idatzi klase honen barruan 472 00:24:59,380 --> 00:25:01,400 horretara db berdina da. 473 00:25:01,400 --> 00:25:03,940 Beraz, zer egin ohi dut, baldin eredu ezberdinak sorta bat, 474 00:25:03,940 --> 00:25:05,910 da base bat behar dudala eredua, ohi dut 475 00:25:05,910 --> 00:25:08,839 deitu besterik ez "oinarrizko eredua" Hori meta klase ditu, 476 00:25:08,839 --> 00:25:10,380 eta PP berdina database ezartzen du. 477 00:25:10,380 --> 00:25:13,710 Eta gero nire ondorengo ereduen guztiak egingo base klase hori oinordetzan. 478 00:25:13,710 --> 00:25:16,760 Eta gero, ez dut kezkatu meta class ezartzeko. 479 00:25:16,760 --> 00:25:21,490 >> Beraz, hau benetan lortzen denean konpilatu behera SQL adierazpen bat sartu, 480 00:25:21,490 --> 00:25:24,875 itxura gaizto gauza hau atsegin du behera Hemen, "Sortu taula ikaslearen osokoa, 481 00:25:24,875 --> 00:25:26,020 "Edozein dela. 482 00:25:26,020 --> 00:25:30,002 >> Eta, laburragoa dela uste dut, SQL kontsulta hau hementxe, 483 00:25:30,002 --> 00:25:32,960 baina begiratzen baduzu class honetan hemen ikusi ahal izango duzu zehazki zer ari den gertatzen. 484 00:25:32,960 --> 00:25:36,116 Zer esparru mota ikusi ahal izango duzu badira, zer ari dira deitzen dira, 485 00:25:36,116 --> 00:25:38,115 eta beraz, uste dut Python kode hau begira 486 00:25:38,115 --> 00:25:43,340 askoz gehiago baino irakurgarri SQL kontsulta hau idazten saiatzen. 487 00:25:43,340 --> 00:25:45,990 >> Beraz, ahal izateko benetan datu-basea erabili, 488 00:25:45,990 --> 00:25:48,470 Python barruan bertara konektatzeko behar dugu. 489 00:25:48,470 --> 00:25:52,770 Beraz, izeneko funtzio bat idatzi ohi dut bi gauza egiten duten initialize_db. 490 00:25:52,770 --> 00:25:54,880 Hartzen basean da Objektu db da eta 491 00:25:54,880 --> 00:25:58,360 konektatuko da bertara, eta horrek bakarrik irekiko da datu-basera atala ireki. 492 00:25:58,360 --> 00:26:00,860 Besterik arren exekutatzen ari bazara Webgune makina lokalean, 493 00:26:00,860 --> 00:26:04,320 Ez da akordio super handi bat kezkatu konektatu eta deskonektatzeko buruz, 494 00:26:04,320 --> 00:26:06,885 exekutatzen ari bazara baina it webgune batean, zuk 495 00:26:06,885 --> 00:26:10,010 Ziur dela eta, erabiltzaile bat egin nahi konektatuko da bertara, noiz itxi dute 496 00:26:10,010 --> 00:26:12,270 Webgunean, deskonektatzeko, bihar-you ez konektatutako jende mordo bat 497 00:26:12,270 --> 00:26:14,480 Zure datu-basea guztiak aldi berean. 498 00:26:14,480 --> 00:26:16,370 >> Eta gero, duzunean datu-basera konektatu, 499 00:26:16,370 --> 00:26:20,832 db.create_tables deitu nahi duzu, eta eredu zerrendatu nahi duzuna egiteko 500 00:26:20,832 --> 00:26:21,540 taulak sortzen. 501 00:26:21,540 --> 00:26:23,950 Beraz, hemen, besterik ez dut nahi sortu da ikaslea horretarako. 502 00:26:23,950 --> 00:26:28,070 Eta gero, zer da garrantzitsua, da Zehaztu seguru = True denbora gehien. 503 00:26:28,070 --> 00:26:30,380 Beraz, zer adierazpen hau eginen, dela 504 00:26:30,380 --> 00:26:33,580 mahaiak sortzen Ikasle eredua, baina bakarrik 505 00:26:33,580 --> 00:26:36,109 mahai hori ez badu Dagoeneko sortu dira. 506 00:26:36,109 --> 00:26:37,400 Hori da seguru zehazten. 507 00:26:37,400 --> 00:26:39,150 Beraz, ezin izango da Gainidatzi zure dagoen mahaia, 508 00:26:39,150 --> 00:26:41,525 Berri bat baino ez da sortuko du mahai bada ez ez bata ez da. 509 00:26:41,525 --> 00:26:45,090 Beraz, ezin besterik sortzen duzunean taulak behin SQL erabiliz. 510 00:26:45,090 --> 00:26:49,410 Eta gero, datu-basea jesartzea ez, eta, ondoren, aldi bakoitzean konektatu, 511 00:26:49,410 --> 00:26:52,450 baina normalean to polita da create_tables deialdi honetan jarri, 512 00:26:52,450 --> 00:26:55,550 beraz, hori inoiz ezabatzen baduzu, zure datu-basea zure web exekutatzen baduzu 513 00:26:55,550 --> 00:26:57,960 Aplikazio berriro, birsortzeko izango da. 514 00:26:57,960 --> 00:27:00,730 >> Beraz, ziurtatu segurua zehazten da egia izan, 515 00:27:00,730 --> 00:27:03,580 edo zure datuak besterik aurkituko duzu ohitu aldi bakoitzean clobbered. 516 00:27:03,580 --> 00:27:06,380 Eta gero, ezin deitu besterik ez duzu initialize_db ezartzea 517 00:27:06,380 --> 00:27:09,820 konexio bat, eta sortu Beharrezkoa izanez gero, mahaiak. 518 00:27:09,820 --> 00:27:13,150 >> Beraz, gauza ohikoena hori egin nahi izango duzu, 519 00:27:13,150 --> 00:27:15,920 edo hain gauza komun bat, da gauza benetan txertatu 520 00:27:15,920 --> 00:27:17,170 Zure datu-basean sartu. 521 00:27:17,170 --> 00:27:19,430 Eta orain, baino beharrik txertatze idazteko INTO 522 00:27:19,430 --> 00:27:21,990 guztiok batera adierazpena balioak zehaztu, 523 00:27:21,990 --> 00:27:24,650 daiteke benetan deitu Funtzio ikaslea klase gainean. 524 00:27:24,650 --> 00:27:28,200 Beraz, klase bat sortzeko erabiltzen duzun hori eredua KDEko, 525 00:27:28,200 --> 00:27:30,200 hau sortzeko metodoa du. 526 00:27:30,200 --> 00:27:33,870 >> Beraz, klase name.create egiten duzu, eta parametroak zehazten duzunean 527 00:27:33,870 --> 00:27:35,260 to gainditu nahi duzula. 528 00:27:35,260 --> 00:27:39,200 Beraz, ikasle batzuk gehitu nahi badut Gure CS50 kalifikazioa book adibidez, 529 00:27:39,200 --> 00:27:41,820 David dut jarri, nork du bat Oso ona kalifikazioa, 95 bat du. 530 00:27:41,820 --> 00:27:45,100 Eta neure burua, ez da egiten duten hain ongi CS50, ez daukat 50 a. 531 00:27:45,100 --> 00:27:47,600 Eta, beraz, buruz gauza polita sortu funtzioa zer honek, 532 00:27:47,600 --> 00:27:53,040 da agerraldian itzultzen dela, edo Ilara, sortu duen mahai epean, 533 00:27:53,040 --> 00:27:55,750 eta, beraz, gero batean gorde duzu aldakorra, eta horrekin batera lan geroago. 534 00:27:55,750 --> 00:27:58,830 Inguruan alda dezakezu, eta horrek Adibide bat erakutsi dut. 535 00:27:58,830 --> 00:28:03,050 >> Ohartu ez ez dut NAN zehaztu egin beharko, 536 00:28:03,050 --> 00:28:09,340 da geroztik delako PrimaryKeyField, automatikoki 537 00:28:09,340 --> 00:28:10,930 Kontatzailea da ez baduzu, zehaztu du. 538 00:28:10,930 --> 00:28:12,250 Eta, hain zuzen ere, seguruenik duzu behar ez zehaztu, 539 00:28:12,250 --> 00:28:14,810 ustekabean agian delako norbaiten NAN gainean idazteko. 540 00:28:14,810 --> 00:28:16,830 Eta egin nahi duzu Ziur berezia dela. 541 00:28:16,830 --> 00:28:20,662 >> Gehien Beraz, egia esan, Egin nahi duzun gauza komun, 542 00:28:20,662 --> 00:28:22,620 hau da, ziurrenik, hautatu egindako Una vez basea ez betetzeko 543 00:28:22,620 --> 00:28:24,078 Informazio asko izan badira ere. 544 00:28:24,078 --> 00:28:27,360 Eta, beraz, dena lortu nahi baduzu, beraz select izar baliokidea 545 00:28:27,360 --> 00:28:30,940 ikasleak adierazpen batetik, besterik ez litzateke izango student.select. 546 00:28:30,940 --> 00:28:34,380 Eta emango dizu back array bat Ikasle guztiek bertan objektuekin 547 00:28:34,380 --> 00:28:35,770 batetik bestera joateko, zuk nahi duzun. 548 00:28:35,770 --> 00:28:37,019 Gauzak eskuratu ahal izango duzu hori. 549 00:28:37,019 --> 00:28:39,310 Eta denbora gehiena, zuk Ez besterik hautatu egin nahi, 550 00:28:39,310 --> 00:28:40,935 benetan zerbait zehaztu nahi. 551 00:28:40,935 --> 00:28:44,580 Eta, beraz, kate ahal duzun elkarrekin funtzio deialdi horiek, 552 00:28:44,580 --> 00:28:48,830 kate nola egiten duzun bezala elkarrekin SQL adierazpenak. 553 00:28:48,830 --> 00:28:53,002 Beraz student.select egin dezakezu (). Bertan Adibide honetan. 554 00:28:53,002 --> 00:28:54,710 Eta gero, ahal duzun baldintzak zehaztu, 555 00:28:54,710 --> 00:28:57,880 besterik Python normal erabiliz Gauzak ikusteko Booleans. 556 00:28:57,880 --> 00:29:02,110 >> Beraz, kasu honetan, nahi duzun nahi duzuna hautatzen ari mugatzeko, 557 00:29:02,110 --> 00:29:06,790 non student.grade 50 berdina da, eta student.name Ezra berdina da, 558 00:29:06,790 --> 00:29:09,130 beraz, hori izango da besterik ez get me atera. 559 00:29:09,130 --> 00:29:11,340 Eta konturatu, inork benetan txantxetako kontua da hemen 560 00:29:11,340 --> 00:29:15,570 , zehaztu nahi baduzu eta / edo bat edo / edo, 561 00:29:15,570 --> 00:29:19,840 Python ere, normalean erabiltzen duzun, Hitza "eta" egia esan, uste dut, 562 00:29:19,840 --> 00:29:23,351 baina hemen ampersand single erabili duzu, hau da, normalean bitekin operadoreak, 563 00:29:23,351 --> 00:29:25,600 baina kasu berezi honetan, besterik modu peewee egiten du, 564 00:29:25,600 --> 00:29:27,660 bakar erabili duzu ampersand zehazteko "eta". 565 00:29:27,660 --> 00:29:29,451 Hori da, zerbait I, nahasi egingo up asko, 566 00:29:29,451 --> 00:29:32,530 baina ez da etorri sortu Hori askoz praktikan. 567 00:29:32,530 --> 00:29:36,350 >> Eta gero, behin guztia duzu Datu-basean daudelarik ikasleei, 568 00:29:36,350 --> 00:29:39,420 Behin egin duzu Oraindik hautatu eta zure higadura edo dena delakoa, 569 00:29:39,420 --> 00:29:42,334 foreach begizta bat erabili ahal izango duzu, besterik Python normal bezala, 570 00:29:42,334 --> 00:29:44,500 Edozein Iterator moduko batekin edo edozein array moduko batekin. 571 00:29:44,500 --> 00:29:46,333 Bana dezakezu, s student.select in (). d 572 00:29:46,333 --> 00:29:52,930 re (Student.grade <75), eta, beraz, hau izango da mahai batean ikasle bakoitzaren zehar batetik bestera 573 00:29:52,930 --> 00:29:56,260 zeinen kalifikazioa 75 baino txikiagoa da, eta horrek Kasu honetan, besterik ez da oraindik niretzat. 574 00:29:56,260 --> 00:29:59,218 Eta gero, zerbait egin izan duzu barruan begizta, bezala bidali email bat 575 00:29:59,218 --> 00:30:01,680 eta esan dit benetan Nire arazoa ezartzen piztu. 576 00:30:01,680 --> 00:30:04,550 >> Beraz, beste gauza bat egin ahal izango dituzu egin, oso erraza da 577 00:30:04,550 --> 00:30:06,460 mahai barruan ilaratan eguneratzeko. 578 00:30:06,460 --> 00:30:08,720 Beraz, gogoratu back hemen, Zure naizenean sartuta, 579 00:30:08,720 --> 00:30:11,440 Balioa izan zen hartu nuen student.create bidez itzuliko, 580 00:30:11,440 --> 00:30:14,920 eta horri esleitutako dut izen Ezra deitzen da. 581 00:30:14,920 --> 00:30:18,995 Eta beraz, orain, aldatu ahal izango duzu Esate barruan baloreak, 582 00:30:18,995 --> 00:30:20,870 bezala besterik ez duzu bat litzateke Python klase normal. 583 00:30:20,870 --> 00:30:25,060 >> Beraz ezar dezakezu ezra.grade = 95 eta Lekuko kopia eguneratu egingo du, 584 00:30:25,060 --> 00:30:28,380 baina baduzu benetan nahi Aldaketa hori konpromisoa taula bera erabiliz, 585 00:30:28,380 --> 00:30:31,410 ezra.save deitu behar duzu, beraz .save metodoa deitzen duzu 586 00:30:31,410 --> 00:30:32,650 Esate gainean. 587 00:30:32,650 --> 00:30:38,085 >> Eta, beraz, gaur egun, behar bezala aldatu dut neurea kalifikazioa datu-base barruan. 588 00:30:38,085 --> 00:30:41,210 Beraz, gero, demagun eskuratu dut harrapatu Nire kalifikazioa datu-base barruan aldatuz. 589 00:30:41,210 --> 00:30:44,126 Malan Irakaslea da ziurrenik joan me ezabatu klasea nahi den, 590 00:30:44,126 --> 00:30:48,630 eta beraz .delete dei dezakezu Esate metodoa besterik gauza on. 591 00:30:48,630 --> 00:30:51,674 >> Beraz, joan nahi izanez gero begizta hau atzera hemen, 592 00:30:51,674 --> 00:30:53,465 eta, egia esan, ordez posta guztiak bidaltzea 593 00:30:53,465 --> 00:30:56,577 Ikasleen zeinen kalifikazioa gutxiago da 75 baino, horiek ezabatu nahi duzula, 594 00:30:56,577 --> 00:30:58,660 begizta honen barruan Could s.delete adibidez deitzeko. 595 00:30:58,660 --> 00:31:04,180 596 00:31:04,180 --> 00:31:07,780 Eta egin nahi duzun azken gauza, da, betiere konexio bat ezarri duzu, 597 00:31:07,780 --> 00:31:10,350 eta zure lana bukatutakoan, db.close deitu nahi duzu, 598 00:31:10,350 --> 00:31:13,190 non db datu-basea dela oposiziorako aurretik izan dugun. 599 00:31:13,190 --> 00:31:18,290 Eta ziurtatu nahi al duzu guztia atera itxita lortzen. 600 00:31:18,290 --> 00:31:18,790 >> Cool. 601 00:31:18,790 --> 00:31:22,410 Beraz, gaur egun, adibidez, aplikazio bat daukat. 602 00:31:22,410 --> 00:31:26,880 Nik Sort aurrez egindako guztia besterik beraz ez da inolako zuzeneko kodetze izan 603 00:31:26,880 --> 00:31:30,220 akatsak, baina ibil gaitezke bidez Flask nola jarri nahi baduzu, eta ikusi 604 00:31:30,220 --> 00:31:33,685 eta peewee elkarrekin, eta egiteko aplikazioa erraza da. 605 00:31:33,685 --> 00:31:38,680 Egiten dut CS50 rant deitu, eta hori da, blog plataforma erraz bat sort. 606 00:31:38,680 --> 00:31:41,150 >> Beraz, lehenik eta behin, exekutatu dut eta erakusteko zer itxura, 607 00:31:41,150 --> 00:31:42,890 eta orduan gehiago begiratu dezakegu kodea sartu. 608 00:31:42,890 --> 00:32:00,470 609 00:32:00,470 --> 00:32:02,830 Ongi da, beraz, utzi exekutatu nahiko luke honek. 610 00:32:02,830 --> 00:32:14,040 611 00:32:14,040 --> 00:32:17,250 Cool, hau egin dut Pixka bat txikiagoa. 612 00:32:17,250 --> 00:32:20,000 Ez da oso polita, besterik ez delako Ez nuen CSS asko egin, 613 00:32:20,000 --> 00:32:23,255 baina zer egiten da, ez du blog mezu-base honetan, 614 00:32:23,255 --> 00:32:25,630 eta doa guztietan barrena da horiek, eta horiek erakutsiko dira 615 00:32:25,630 --> 00:32:28,170 Berrienetariko ordenan orrian. 616 00:32:28,170 --> 00:32:30,920 Eta beraz, horiek dira mezu batzuk Datu-basean dudala salbatu zioten. 617 00:32:30,920 --> 00:32:35,680 >> Beraz, berri bat sortu nahi badugu post, Post berria gehitzeko, joan ahal izango dugu, 618 00:32:35,680 --> 00:32:42,720 eta titulua sar gaitezke post, beraz, antzeko zerbait CS50 mintegia. 619 00:32:42,720 --> 00:32:45,360 620 00:32:45,360 --> 00:32:46,735 Wow, benetan mintegi gozatuz. 621 00:32:46,735 --> 00:32:51,070 622 00:32:51,070 --> 00:32:52,270 >> Cool. 623 00:32:52,270 --> 00:32:56,060 Ondoren post sakatu duzu, eta hala egingo du redirect back home orria, 624 00:32:56,060 --> 00:33:00,039 eta orduan ikusiko duzu azken post gehitu zitzaion. 625 00:33:00,039 --> 00:33:01,580 Eta oraindik direnak ez ditugu. 626 00:33:01,580 --> 00:33:08,080 Beraz, orain, goazen urratsaren guztietan zehar kodea ikusi eta nola hau garatu gabe dago. 627 00:33:08,080 --> 00:33:11,995 >> Beraz, dezagun hori lehenengo gauza dela uste dut , benetan ereduen begirada bat hartu. 628 00:33:11,995 --> 00:33:14,120 Denbora asko, betiere zerbait diseinatzen ari zaren, 629 00:33:14,120 --> 00:33:17,036 nola buruzko lehen uste duzu nahi Zure datu ordezkatzen joan zaren, 630 00:33:17,036 --> 00:33:22,915 eta, ondoren, inguruan gauzak diseinatzen, beraz, dena zentzua. 631 00:33:22,915 --> 00:33:25,290 Eta hori da, benetan zenbat I egin naizenean hau egiten zen, 632 00:33:25,290 --> 00:33:28,030 Eseri nintzen eta pentsatu, Zer nahi post batean. 633 00:33:28,030 --> 00:33:32,130 >> Beraz, hemen, egitura bera dugu lehenago aipatzea ari nintzen, 634 00:33:32,130 --> 00:33:33,755 non egiten dugu db = Sqldatabase ('posts.db'). 635 00:33:33,755 --> 00:33:37,840 636 00:33:37,840 --> 00:33:40,980 Egia esan, seguruenik ez duzu nahi Zure izenaren datu kodea gogorra da. 637 00:33:40,980 --> 00:33:43,730 Hori aski parametro bat izan behar du hori nonbait gordetzen, agian, 638 00:33:43,730 --> 00:33:45,940 konfig fitxategi batean, baina ere Hau bezalako adibide txiki bat, 639 00:33:45,940 --> 00:33:48,310 direla kodea gogorra ongi da. 640 00:33:48,310 --> 00:33:53,510 >> Beraz, gaur egun, Post class hau dugu, bertan base eredua KDEko. 641 00:33:53,510 --> 00:33:56,930 Eta, duela berriro aurreratu da ID = PrimaryKeyField. 642 00:33:56,930 --> 00:34:02,250 Egia esan, ez baduzu, zehaztu, I benetan got deusezten bada, 643 00:34:02,250 --> 00:34:07,152 Orduz peewee zaindu beharko dugu NAN eremu hori automatikoki sortzeko, 644 00:34:07,152 --> 00:34:09,360 eta automatikoki egingo da horregatik da PrimaryKey bat, eta horrek 645 00:34:09,360 --> 00:34:12,485 Nik uste dut, benetan polita, ohi delako, Hori izan nahi duzu zerbait, 646 00:34:12,485 --> 00:34:16,239 baizik eta, zehazki, gustatzen zait, Beraz, besterik ez dut gogoratzen dela hor. 647 00:34:16,239 --> 00:34:19,480 Baina ez baduzu, zehaztu duenez, han izango da automatikoki. 648 00:34:19,480 --> 00:34:22,198 >> Beraz, ondoren, data bat daukat eta horrek DateTimeField bat da, eta guztiak 649 00:34:22,198 --> 00:34:24,864 alor desberdinetan horiek, nahi izanez gero the peewee dokumentazioa begiratu, 650 00:34:24,864 --> 00:34:28,920 desberdinen zerrenda bat emango da erabili ditzakezun-eremu mota. 651 00:34:28,920 --> 00:34:34,440 Zati handiena, antzeko da zer SQL mantenduz ikusteko. 652 00:34:34,440 --> 00:34:37,699 Beraz, ez CharField bat da, VarCharFields, TextFields, 653 00:34:37,699 --> 00:34:40,550 bertan oso luzeak dira testuak, blog post bat bezala 654 00:34:40,550 --> 00:34:44,460 potentzialki, DateTimeFields, DoubleFields, FloatFields, 655 00:34:44,460 --> 00:34:46,100 Horrelako gauza guztiak. 656 00:34:46,100 --> 00:34:51,570 >> Eta beste argudioak pasatzeko dezakezu da, eta horrek ez nuen hemen zehaztu. 657 00:34:51,570 --> 00:34:55,719 Esan, adibidez, ez duzu nahi baimendu bi mezu izenburu bereko dute, 658 00:34:55,719 --> 00:34:59,672 zehaztu ahal duzu berezia antzeko zerbait = True, 659 00:34:59,672 --> 00:35:02,880 eta hori parametro gehigarri bat besterik ez da eremuan denean du biltzen behera egiten duten 660 00:35:02,880 --> 00:35:06,865 SQL sartu, zehaztu egingo da duela berezia izan da. 661 00:35:06,865 --> 00:35:09,740 Zuk ere horrelako zerbait zehaztu dezakezu ez nulua eta beste gauza guztiak 662 00:35:09,740 --> 00:35:11,750 SQL egin normalean. 663 00:35:11,750 --> 00:35:16,020 Beraz, hau da, nahiko erraza da Hori datarekin ditu eredu. 664 00:35:16,020 --> 00:35:19,460 Iragarki hemen, DateTimeField barruan, Lehenetsia zein den zehaztu dut. 665 00:35:19,460 --> 00:35:22,560 Izan dela zehaztu dut datetime.datetime.now, 666 00:35:22,560 --> 00:35:24,920 delako modu hori hau erabat ebaluatu, 667 00:35:24,920 --> 00:35:28,750 benetan ebaluatzen da datetime.now denean 668 00:35:28,750 --> 00:35:32,110 lortzen datu-basean sartuta. 669 00:35:32,110 --> 00:35:34,760 >> Hori, litzaidake izan dudala uste dut egiaztatu honetan bikoizteko, 670 00:35:34,760 --> 00:35:38,222 baina honen antzeko zerbait egin nahi izanez gero, ondoren, benetan litzateke ebaluatzeko behin, 671 00:35:38,222 --> 00:35:40,180 eta orduan du argia du beti berdina izan. 672 00:35:40,180 --> 00:35:44,240 Beraz, zuk zerbait egiten ari gertatuko ez balitz datetimes batera, egiaztatu ea 673 00:35:44,240 --> 00:35:47,080 Hori ebaluatzeko da benetan lortzen txertatuko, edo, bestela, 674 00:35:47,080 --> 00:35:48,780 nahastu liteke. 675 00:35:48,780 --> 00:35:51,221 >> Izenburuak, besterik da CharField, horrek ez 676 00:35:51,221 --> 00:35:53,970 Argumentu bat baino gehiago pasa dezakezu zehazki zehaztuz zenbat denbora duzun 677 00:35:53,970 --> 00:35:56,170 Nahi izatea, baina hemen, ez da benetan axola. 678 00:35:56,170 --> 00:35:58,687 Eta Idatzi izango da Post osoen testua 679 00:35:58,687 --> 00:36:01,020 eta hori izango da joan Testu-eremu nahi duzun baizik 680 00:36:01,020 --> 00:36:03,370 katea nahiko luze bat izatea ahal izateko. 681 00:36:03,370 --> 00:36:05,970 >> Ondoren Meta hau dugu azpiklase hori besterik 682 00:36:05,970 --> 00:36:11,250 zehazten duen datu-baseko egin nahi dugula non hau benetan irekitako sartu 683 00:36:11,250 --> 00:36:14,267 the db objektu hori hemen dugu izan. 684 00:36:14,267 --> 00:36:16,350 Eta azken gauza egin behar dugu Hemen, funtzio hau ez da 685 00:36:16,350 --> 00:36:18,120 ari garela joan Gure aplikazio nagusitik erabili 686 00:36:18,120 --> 00:36:23,970 datu-basera konektatzeko abiarazi da, eta, ondoren Post taula sortu. 687 00:36:23,970 --> 00:36:26,880 >> Orain, dezagun aplikazioa nagusia bertan. 688 00:36:26,880 --> 00:36:30,800 Beraz, hau da, nahiko bit direnak baino luzeagoak 689 00:36:30,800 --> 00:36:34,840 Hori ikusi dugu aurretik, baina, zorionez, ez da txarra. 690 00:36:34,840 --> 00:36:37,140 Beraz, utzi hau zabaltzeko egindako me. 691 00:36:37,140 --> 00:36:38,370 Ados. 692 00:36:38,370 --> 00:36:42,070 >> Beraz, konturatu eta goian dut inportatutako Beste gauza batzuen sorta oso bat 693 00:36:42,070 --> 00:36:44,129 Flask bertatik ez dugun benetan ikusi aurretik. 694 00:36:44,129 --> 00:36:46,670 Eta zorionez, bidez joan ahal izango dugu horietatik, banan-banan, bakoitzak 695 00:36:46,670 --> 00:36:49,420 eta hitz egin buruz zerbait gehiago Adibide moduan horiek, ordenatuta. 696 00:36:49,420 --> 00:36:51,380 Beraz, Flask daukagu, eta render_template du, 697 00:36:51,380 --> 00:36:54,370 bertan ikusi dugu aurretik, Eskaera objektuaren honetan, 698 00:36:54,370 --> 00:37:00,400 etorriko da begiratzen nola iristen gara hori benetan nintzen erakusten formularioa 699 00:37:00,400 --> 00:37:01,170 lan egiten du. 700 00:37:01,170 --> 00:37:04,850 Birzuzenketa, horrek aukera ematen dizu redirect Sortu Post Berritik itzuli 701 00:37:04,850 --> 00:37:11,710 Jatorrizko hasierara atzera, eta, ondoren, URL, eta horrek aukera ematen dizu zerbait da 702 00:37:11,710 --> 00:37:15,550 irudikatu non on Webgune Orrialde bat da. 703 00:37:15,550 --> 00:37:17,810 >> Beraz, ondoren, hurrengo Gauza dut egin, I inportazio da 704 00:37:17,810 --> 00:37:21,550 ereduak batetik informazio guztia Hori besterik ez dugu ikusten ari ziren fitxategiak. 705 00:37:21,550 --> 00:37:23,140 Eta, bai. 706 00:37:23,140 --> 00:37:28,720 >> Beraz, beste zerbait berria datorren denean ari zaren aurre eman, 707 00:37:28,720 --> 00:37:31,850 batez ere, datu, dela zehaztu dezakezu 708 00:37:31,850 --> 00:37:35,110 Lortzen aurretik izeneko funtzio bat eskaera guztietan, eta funtzio hori lortzen 709 00:37:35,110 --> 00:37:39,690 eskaera bakoitzaren ondoren deitzen zaio, hau erabilita Funtzio dekoratzaileak app.before eskaera. 710 00:37:39,690 --> 00:37:42,324 >> Eta, beraz, hau exekutatu egingo dira tokian funtzioa hau da. 711 00:37:42,324 --> 00:37:44,240 Honek ez du nahi izan eskaera aurretik deitu, 712 00:37:44,240 --> 00:37:46,281 baina normalean zerbait deitu sensible. 713 00:37:46,281 --> 00:37:48,580 714 00:37:48,580 --> 00:37:51,650 Edozein dela funtzioa zehaztu dezakezu izeneko lortu nahi baduzu, 715 00:37:51,650 --> 00:37:56,330 beraz initialize_db honetan zehaztutako dut Funtzio hori itzuli behar izan genuen ereduak 716 00:37:56,330 --> 00:38:02,390 fitxategia, beraz, eskaera guztietan aurretik, zuk datu-basera konektatu nahi. 717 00:38:02,390 --> 00:38:04,560 >> Badira bi ezberdinak dira Modu honetan egin ahal izango duzu. 718 00:38:04,560 --> 00:38:10,830 app Egin dezakezu., I Sinesten after_request da. 719 00:38:10,830 --> 00:38:13,800 Eta arteko aldea after_request eta teardown_request, 720 00:38:13,800 --> 00:38:17,590 dela after_request bakarrik gertatuko da eskaera benetan da zuzena bada. 721 00:38:17,590 --> 00:38:20,440 Eta, beraz, bakarra balitz eskaera arrakastatsua izan da, 722 00:38:20,440 --> 00:38:22,490 ezer oker joan bada, baina teardown_request 723 00:38:22,490 --> 00:38:26,300 arrakasta baten kasuan ere gertatzen eskatuta, edo Akats baten kasuan ere. 724 00:38:26,300 --> 00:38:28,252 >> Beraz, normalean, nahi duzun teardown_request erabili, 725 00:38:28,252 --> 00:38:30,460 Egin nahi ez duzun bitartean zerbait, batez ere desberdina 726 00:38:30,460 --> 00:38:31,470 Akats baten kasuan ere. 727 00:38:31,470 --> 00:38:35,122 Baina besterik ez da datu-basea ixteko, arrakastasua da edo huts egiten badu ala ez, 728 00:38:35,122 --> 00:38:37,080 egiten dugu deskonektatzea nahi duzu basetik. 729 00:38:37,080 --> 00:38:41,240 Beraz izenekoa, db.close db objektuaren gainean. 730 00:38:41,240 --> 00:38:43,740 >> Iragarki teardown_request dela salbuespen bat ere hartzen du. 731 00:38:43,740 --> 00:38:46,781 Beraz egiaztatu dezakezu han izan zen benetan Akats baten denean itxi zen, 732 00:38:46,781 --> 00:38:49,390 baina hemen, zorionez, han Ez dira, akats asko, 733 00:38:49,390 --> 00:38:52,720 beraz ari gara besterik Ordena hori jaramonik egin gabe. 734 00:38:52,720 --> 00:38:55,990 >> Ongi da, eta gainerakoak ez da txarra. 735 00:38:55,990 --> 00:39:02,240 Beraz, joan hasierako orrialdera dugu, home.html Txantiloi hau errendatzen dugu 736 00:39:02,240 --> 00:39:03,490 hori, ireki egingo da. 737 00:39:03,490 --> 00:39:06,240 Mendatearen post dago eta zer honen berdina 738 00:39:06,240 --> 00:39:10,260 egiten da, gogoratu post hau dugu eredua, beraz, mezu guztiak aukeratu dugu, 739 00:39:10,260 --> 00:39:13,890 eta, gero, beste gauza bat egin ahal izango duzu, non klausula zehaztu dezakezu, 740 00:39:13,890 --> 00:39:16,910 bat adieraz dezakezu ordenaren arabera, eta, beraz, hartu dugun 741 00:39:16,910 --> 00:39:18,820 mezu guztiek lortu hautatu, eta, ondoren, 742 00:39:18,820 --> 00:39:22,590 ordenatu ditugu arabera post.date.descending. 743 00:39:22,590 --> 00:39:25,030 Eta hori zehaztu beharko denean, baina hauek atera, 744 00:39:25,030 --> 00:39:29,250 berriena bat oso lehen izango da. 745 00:39:29,250 --> 00:39:31,420 >> Eta gero, hori gainditu dugu sartu the home.html template, 746 00:39:31,420 --> 00:39:34,240 beraz, utzi benetan ireki Txantiloi benetan azkar, 747 00:39:34,240 --> 00:39:36,760 eta nola hori lanean begirada bat hartu. 748 00:39:36,760 --> 00:39:42,130 Eta hau ez da HTML handia, baina zorionez, Python, ezin dugu arreta. 749 00:39:42,130 --> 00:39:46,960 >> Beraz, ez du Add New lotura bat da Post, eta, beraz, hau ibilbidea zehazten 750 00:39:46,960 --> 00:39:51,580 Flask barruan dugun definitzeko, hau da, hemen. 751 00:39:51,580 --> 00:39:56,310 Hau post ibilbide berria da, eta hori zehazteko sortu hemen dugu. 752 00:39:56,310 --> 00:40:00,450 Eta beraz, lotura hori izango da, ondoren joan da Flask zerbitzari barruan ibilbidea egiteko. 753 00:40:00,450 --> 00:40:03,820 >> Gauza interesgarri gehiago da hau loop hemen da. 754 00:40:03,820 --> 00:40:07,685 Beraz, zehaztu dugun hori post parametroa bertan 755 00:40:07,685 --> 00:40:09,560 pasa zen render_template funtzioa, 756 00:40:09,560 --> 00:40:13,550 post hamarkadako post bakoitzean Lortzen gainditu objektu. 757 00:40:13,550 --> 00:40:16,600 Inprimatu nahi dugu post izenburua, H1 ere, 758 00:40:16,600 --> 00:40:21,930 eta, ondoren, behean, inprimatu nahi dugu post testua paragrafo baten barruan. 759 00:40:21,930 --> 00:40:25,710 >> Eta hemen, ezin dugu benetan Python funtzio bat deitu, 760 00:40:25,710 --> 00:40:35,130 beraz strftime deitu ahal izango dugu, ST-RF-time, eta formatu katea pasatzen ditzakezu 761 00:40:35,130 --> 00:40:37,064 Datu inprimatzeko ere atera nahi duzula. 762 00:40:37,064 --> 00:40:39,980 Beraz, ez da nahiko polita egin dezakezu benetan deitu Python funtzio honetan 763 00:40:39,980 --> 00:40:41,090 Hemen barrutik. 764 00:40:41,090 --> 00:40:44,370 Ez daukazu on formatua egin controller aldean, benetan delako, 765 00:40:44,370 --> 00:40:47,770 data formatua zerbait dela bistak barruan landu nahi duzun. 766 00:40:47,770 --> 00:40:51,480 >> Eta ehuneko horiek guztiak Gauzak ez super garrantzitsua da. 767 00:40:51,480 --> 00:40:55,270 Gora begiratuz dokumentazioa bada strftime Python funtzioa, 768 00:40:55,270 --> 00:40:57,040 zehazten da horiek guztiak Gauzak, baina, hori 769 00:40:57,040 --> 00:40:59,190 nola, bilatzen ari garenerako Hasierako orriaren hemen at, 770 00:40:59,190 --> 00:41:04,440 hau formatu polita da data, eta AM dela zehazten edo PM, 771 00:41:04,440 --> 00:41:09,410 baina normalean, ez dugu bada ez dute aukera hau hemen, 772 00:41:09,410 --> 00:41:14,024 baliteke zuk zabor batzuk lortzeko data horretan ez zuen itxura oso ona. 773 00:41:14,024 --> 00:41:15,940 Eta gero, zehaztu dugu post.text, eta I Could 774 00:41:15,940 --> 00:41:19,460 pare bat jarri dute Lerro saltoak hemen, besterik ez 775 00:41:19,460 --> 00:41:21,820 post bakoitzaren arteko espazio batzuk jarri. 776 00:41:21,820 --> 00:41:26,270 >> Beraz, garrantzitsuena dela uste dut Adibide honetan gauza, 777 00:41:26,270 --> 00:41:28,697 da hau erabili ditzakezun begizta. 778 00:41:28,697 --> 00:41:30,780 Eta hau da, erabat antzeko Gauzak PHP egin dezakezu. 779 00:41:30,780 --> 00:41:32,905 Batetik bestera joateko aukera duzu, dena gainditu lortzen ere, 780 00:41:32,905 --> 00:41:36,719 eta beraz, ordez izatearen egin kopiatu / itsatsi, kopiatu / itsatsi HTML guztian, 781 00:41:36,719 --> 00:41:40,010 nahikoa da behin idazteko, eta, ondoren, batetik bestera joateko dezakezu gehiagoko mezu guztiak. 782 00:41:40,010 --> 00:41:41,510 >> Eta hau zerbait da komun nahi duzula 783 00:41:41,510 --> 00:41:44,510 , egin behar denean, datu asko behar duzu, Zure datuetan dena dela, 784 00:41:44,510 --> 00:41:48,370 Antzeko gauza bat egin nahi duzula. 785 00:41:48,370 --> 00:41:51,690 Eta gero, jakin ezazue, duzunean dagoela zerbait esplizituki inprimatu nahi 786 00:41:51,690 --> 00:41:54,780 HTML, erabili duzu the giltza bikoitza hemen, 787 00:41:54,780 --> 00:41:57,820 baina orduan, zehaztu nahi dituzu Baldintza bati buruzko informazioa, 788 00:41:57,820 --> 00:42:02,430 edo buruz begizta for a, zuk ehuneko parentesi erabili. 789 00:42:02,430 --> 00:42:08,730 >> Beraz, atzera egingo Python izateko kodea, beraz, azaldu du 790 00:42:08,730 --> 00:42:12,242 zer ari nagusiak gertatzen Ibilbidea, hara joaten gara, 791 00:42:12,242 --> 00:42:14,450 besterik bistaratzen dena Mezu, baina gero, galdera 792 00:42:14,450 --> 00:42:17,440 hau da, nola ez benetan lortu dugu datu-basea, sartu mezu horrek 793 00:42:17,440 --> 00:42:18,970 pixka bat gehiago interesgarri. 794 00:42:18,970 --> 00:42:23,960 >> Beraz, noiz berria, bertan klik Post lotura, hemen ikusi genuen, 795 00:42:23,960 --> 00:42:26,000 you plazarik formulario hau. 796 00:42:26,000 --> 00:42:29,580 Eta hori soil bat besterik ez da render_template funtzioa, zein ondoren 797 00:42:29,580 --> 00:42:32,110 HTML inprimakia post berria pasatzen. 798 00:42:32,110 --> 00:42:36,212 Beraz, dezagun begirada bat. 799 00:42:36,212 --> 00:42:37,420 Beraz, hau nahiko erraza da. 800 00:42:37,420 --> 00:42:45,110 HTML inprimaki erraz bat, eta hori Pixka bat ezagutzen begiratu beharko, 801 00:42:45,110 --> 00:42:47,380 oinarritutako CS50 Ogasun inprimakietan. 802 00:42:47,380 --> 00:42:49,940 Eta, beraz, hemen zehaztu ditugu, ekintza. 803 00:42:49,940 --> 00:42:52,435 Eta hemen, lanean ari bada PHP batera, normalean, eguneroko 804 00:42:52,435 --> 00:42:55,930 antzeko zerbait izango litzateke, create.PHP, baina hemen 805 00:42:55,930 --> 00:42:59,960 Benetan zehaztu dugu ibilbide bat Flask zerbitzari barruan. 806 00:42:59,960 --> 00:43:02,520 Eta, beraz, ibilbide honetan dagokio sortu ibilbideari 807 00:43:02,520 --> 00:43:05,680 hemen dugu hori, eta horrek sartu dugu bigarren bat joan. 808 00:43:05,680 --> 00:43:07,630 >> Eta beraz, hori zehaztu dugu post-metodo bat da, 809 00:43:07,630 --> 00:43:09,820 Bidali nahi dugulako Formulario Datu horiekin, eta normalean 810 00:43:09,820 --> 00:43:12,945 datuak inprimaki bat bidaltzen ari bazara, Baliteke post eskaera bat erabili nahi baduzu, 811 00:43:12,945 --> 00:43:15,760 Zuk ez besterik, beraz, azkenean big, unwieldy URL honekin. 812 00:43:15,760 --> 00:43:18,970 Baina eskaera bat ere erabili ahal izango duzu, eta gainditu ere routing aldakorreko, 813 00:43:18,970 --> 00:43:21,170 baina inprimakiak, polita da post eskaera bat hemen. 814 00:43:21,170 --> 00:43:24,620 Eta, beraz, ondoren, besterik gabe, nahi duzun HTML eta PHP egiten den, 815 00:43:24,620 --> 00:43:28,420 Testu sarrera horiek zehaztu dezakezu, eta horietako izena zehaztu ahal izango duzu, 816 00:43:28,420 --> 00:43:33,490 eta hori gainditu ahal izango da izena da Eskaera objektuaren Flask barruan sartu. 817 00:43:33,490 --> 00:43:36,960 >> Eta gero, bat aurkeztu dugu botoia Post esaten duen. 818 00:43:36,960 --> 00:43:40,760 Eta hemen, Post izena da botoia, blog post bat delako, 819 00:43:40,760 --> 00:43:42,700 baina hemen, post eskaera metodoa da. 820 00:43:42,700 --> 00:43:47,060 Beraz, hitza bera dira baina benetan zerikusirik. 821 00:43:47,060 --> 00:43:48,460 Yeah 822 00:43:48,460 --> 00:43:54,800 >> Atzera eginez Python kodean, denean deitzen dugun sortzeko metodoa, 823 00:43:54,800 --> 00:43:57,702 hemen nabarituko ahal duzu benetan ibilbidearen barruan zehaztu 824 00:43:57,702 --> 00:44:00,650 eskaera metodoak onartu nahi duzula, 825 00:44:00,650 --> 00:44:04,770 eta, beraz, hemen, I zehaztu dut bakarra Post metodo bat onartu nahi. 826 00:44:04,770 --> 00:44:09,800 Beraz, benetan saiatzen naiz orria bisitatzeko bada zuzenean, eta hori lortzeko, eskaera bat erabiltzen ari da, 827 00:44:09,800 --> 00:44:11,700 me esango dizu "metodoa ez da onartzen." 828 00:44:11,700 --> 00:44:15,840 >> Eta beraz, orrialdeak behar duzu, ordenatzeko bezalako Sortu orrialde honetan, bertan nago bakarrik 829 00:44:15,840 --> 00:44:20,192 benetan erabiltzeko modu bat bezala Aurkeztutako emateko formularioa, 830 00:44:20,192 --> 00:44:22,900 ez duzula zehatz dezakezu nahi jendea hara joaten ahal izateko 831 00:44:22,900 --> 00:44:25,650 zuzenean eskaera baten bidez, edo ez duzu nahi izanez gero, 832 00:44:25,650 --> 00:44:28,580 arrazoi batzuk, Post eskaera bat, Besterik ezin zehaztu duzu hemendik, 833 00:44:28,580 --> 00:44:32,720 baina adibide honetan, besterik ez dugu Nahi Post eskaera irteteko. 834 00:44:32,720 --> 00:44:38,700 >> Beraz, create_post deitzen da, betiere bisitatzen dugun Post eskaera bidez, 835 00:44:38,700 --> 00:44:43,600 joan duzunean jakin bati Ibilbidea, han eskaera objektu hau da, 836 00:44:43,600 --> 00:44:46,640 eta inportatu nahi izan genuen oso goian eskaerak, 837 00:44:46,640 --> 00:44:49,640 baina ez dago eskaera hau da Lortzen gainditu objektu, 838 00:44:49,640 --> 00:44:53,210 eta inprimaki datuak sartu ahal izango duzu, bertan automatikoki beteko dira 839 00:44:53,210 --> 00:44:55,070 betiere formulario batetik eskaera bat bidali behar dituzu. 840 00:44:55,070 --> 00:44:56,990 >> Eta gero, zer uste dut benetan cool, da 841 00:44:56,990 --> 00:45:02,840 Formulario objektu hori gainditu ahal izateko ere, besterik Python hiztegi bat dela 842 00:45:02,840 --> 00:45:10,560 dauka, beraz, hemen access-- baduzu, utzi Tira me HTML ondoan, besterik 843 00:45:10,560 --> 00:45:17,670 beraz, hori izan dezakezu erreferentzia bat, bai, beraz, 844 00:45:17,670 --> 00:45:21,060 izenak hemen zehaztu dugu alor desberdinetan, beraz, 845 00:45:21,060 --> 00:45:23,900 titulua eta testua, dugu ondoren erabili hemen gorakoentzako 846 00:45:23,900 --> 00:45:27,110 inprimaki datuak sartu indizeak bezala. 847 00:45:27,110 --> 00:45:28,950 Beraz, hori super erosoa da. 848 00:45:28,950 --> 00:45:33,320 >> Beraz, ondoren post.create deitzen diogu, eta horrek sortuko da, eta automatikoki sartzen 849 00:45:33,320 --> 00:45:36,850 post objektu berri honek datu-basean sartu. 850 00:45:36,850 --> 00:45:40,690 Eta uste dut hori sortzea funtzioa Hemen nola adibide benetan cool bat da 851 00:45:40,690 --> 00:45:44,900 indartsua Flask da eta honekin lanean, duzu zerbait egiten ari delako 852 00:45:44,900 --> 00:45:48,660 PHP ere, baliteke dute asko egin baliozkotzea, 853 00:45:48,660 --> 00:45:51,730 orduan izango litzateke datu-baseko konexio bat ezarri 854 00:45:51,730 --> 00:45:55,210 orduan izango litzateke SQL kontsulta exekutatu, 855 00:45:55,210 --> 00:45:59,550 baina hemen, besterik ez dugu polit hau post.create, eta gero, ahal dugu besterik 856 00:45:59,550 --> 00:46:01,520 informazioa lortzeko egindako eskaera-objektuaren, 857 00:46:01,520 --> 00:46:05,370 eta, ondoren, pasa ezazu berri batean iruzkin sortzen ari garela. 858 00:46:05,370 --> 00:46:07,850 >> Eta gero, oso azkenekoak gauza egin nahi dugu, 859 00:46:07,850 --> 00:46:09,630 da berbideraketa Erabiltzaile etxera itzuli. 860 00:46:09,630 --> 00:46:13,020 Eta, beraz, hau erabili dugu Flask redirect funtzioa. 861 00:46:13,020 --> 00:46:17,770 Eta zerbait ez genuen ikusi aurretik, URL hau funtzioa zen. 862 00:46:17,770 --> 00:46:21,970 Beraz, funtzio URL ematen dizu benetan izena pasatzen duzu 863 00:46:21,970 --> 00:46:26,090 Zure Python kodea ere funtzio baten, baizik eta ibilbide jakin baino 864 00:46:26,090 --> 00:46:26,720 dela ere. 865 00:46:26,720 --> 00:46:32,107 >> Beraz bezain erraz izan dut berbideratuko erabiltzaileari egindako barra, 866 00:46:32,107 --> 00:46:37,050 bertan atzera etxera bidali zuen, baina URL erabiliz funtzioa da polita, 867 00:46:37,050 --> 00:46:39,990 aldatu bada delako kokapena Gauzak non, 868 00:46:39,990 --> 00:46:44,080 beraz, esan dezagun, aldatu dut aurrera etxera / Etxean izan beharrean, 869 00:46:44,080 --> 00:46:47,040 hau litzateke oraindik orduan itzuliko / home, benetan delako doa eta begiratuko 870 00:46:47,040 --> 00:46:50,770 funtzioaren izena du, eta haren URL atzera duzun hori emango. 871 00:46:50,770 --> 00:46:52,490 >> Beraz, ordenatzeko on the assumption duzu zarela 872 00:46:52,490 --> 00:46:55,489 gehiago litekeena non gauzak aldatzeko dira, funtzioen izenak baino. 873 00:46:55,489 --> 00:46:58,840 Hau benetan erabili ahal izango duzu Funtzio polita URL. 874 00:46:58,840 --> 00:47:02,470 Eta gauza bat kontuan izan behar da Hori da pixka bat zaila, 875 00:47:02,470 --> 00:47:05,750 da uste duzun besterik ezin duzu deitu URL on redirect, 876 00:47:05,750 --> 00:47:10,600 baina, egia esan, ibilbide guztia dute Testua eta HTML nolabaiteko itzuliko da, 877 00:47:10,600 --> 00:47:14,360 Beraz, benetan behar redirect deia itzultzeko. 878 00:47:14,360 --> 00:47:18,379 Bestela, zerbait jasoko duzu baliogabeak ez kate bat itzuli buruz, 879 00:47:18,379 --> 00:47:21,420 horiek guztiak itzuliko delako HTML benetan errendatu nahi duzun. 880 00:47:21,420 --> 00:47:26,980 >> Eta horrela, redirect deitu, you plazarik da orrira, 881 00:47:26,980 --> 00:47:30,270 baina benetan HTML itzultzen du redirect exekutatu behar duzu. 882 00:47:30,270 --> 00:47:34,430 883 00:47:34,430 --> 00:47:37,110 Joan hasierako orrialdera itzuli. 884 00:47:37,110 --> 00:47:39,200 Beraz, bi ikuspegi desberdin horiek ditugu. 885 00:47:39,200 --> 00:47:40,132 Home ikuspegian daukagu. 886 00:47:40,132 --> 00:47:41,590 Edo, templates esan behar dut uste dut. 887 00:47:41,590 --> 00:47:44,190 Bi templates hauek ditugu, home txantiloian bertan 888 00:47:44,190 --> 00:47:48,500 gure mezu guztiak erakusten ditu, eta gero ad gauza hau izan genuen, 889 00:47:48,500 --> 00:47:52,970 Noiz eta post klik eginez gero, ez doa ibilbide berri bat Flask barruan, 890 00:47:52,970 --> 00:47:55,920 baina ibilbide horrek ez du nahitaez dagokion txantiloi bat dute. 891 00:47:55,920 --> 00:47:59,290 892 00:47:59,290 --> 00:48:01,560 Ez duzu ikusi ezer, baina oraindik dezakezu 893 00:48:01,560 --> 00:48:04,090 dute lan hau joan eszenak atzean. 894 00:48:04,090 --> 00:48:07,450 Eta orduan ezagutu berbideratuko duzu Hasierako orrialdera itzuli. 895 00:48:07,450 --> 00:48:12,230 Eta, zalantzarik gabe, erraza da lan egiteko txantiloian sartu CSS batzuk ikusgarriago batean 896 00:48:12,230 --> 00:48:15,580 eta egiteko hau begiratzen, ikusgarriago, baina logika nagusiaren guztiak 897 00:48:15,580 --> 00:48:18,590 dago Python gainean. 898 00:48:18,590 --> 00:48:20,020 >> Adibide horri buruzko edozein galdera? 899 00:48:20,020 --> 00:48:22,760 Ez dakit asko gauza desberdinak Hara joan, 900 00:48:22,760 --> 00:48:25,341 gauza asko ez genuen ikusi aurretik, baina ezer bezalakoa. 901 00:48:25,341 --> 00:48:25,840 Bai. 902 00:48:25,840 --> 00:48:28,346 >> Ikusleak 1: Ez da ezer egin behar duzu bereziak datu hori sasiak 903 00:48:28,346 --> 00:48:29,600 Sasoi aldetik buruturiko? 904 00:48:29,600 --> 00:48:31,109 Nabaritu dut esan besterik ez duzu "sortzeko," 905 00:48:31,109 --> 00:48:33,900 EZRA Zigmond: Bai, beraz, hori da benetan, puntu bat benetan ona da. 906 00:48:33,900 --> 00:48:36,350 Beraz, galdera zen, ez duzu egiaztatu eta ziurtatu behar 907 00:48:36,350 --> 00:48:39,190 duten datuak baliozkoa da, eta Edozein scrubbing moduko egin 908 00:48:39,190 --> 00:48:41,840 Ziur baliozko dela egiteko, Hemen ikusi dezakezu bezala delako, 909 00:48:41,840 --> 00:48:42,660 Ez dut hori egiten. 910 00:48:42,660 --> 00:48:48,140 Beraz, ikus dezagun zer gertatzen Zerbait hutsik iruzkin badut. 911 00:48:48,140 --> 00:48:51,190 Beraz, egia esan, izango da besterik egin a post hutsik eta DateTime bete. 912 00:48:51,190 --> 00:48:55,990 >> Beraz, egia esan, ziurrenik zenuke zerbait egin nahi baduzu, 913 00:48:55,990 --> 00:49:04,749 agian zehaztu izenburua berdina bada kate hutsa, orduan ez du egin. 914 00:49:04,749 --> 00:49:07,290 Edo, besterik ez da egin izenburua da bada Ez kate hutsa berdina. 915 00:49:07,290 --> 00:49:10,330 Beraz, ez du benetan automatikoki zaindu scrubbing horren 916 00:49:10,330 --> 00:49:12,820 Zuretzat, beraz, oraindik ez da egin behar duzu. 917 00:49:12,820 --> 00:49:14,330 Bai, galdera ona. 918 00:49:14,330 --> 00:49:18,497 >> Ikusleak 2: sasiak Du Segizio injekzio? 919 00:49:18,497 --> 00:49:19,890 Ba al dakizu? 920 00:49:19,890 --> 00:49:22,830 >> EZRA Zigmond: Zorionez, peewee du hori. 921 00:49:22,830 --> 00:49:25,830 Uste dut zalantzarik gabe, izango litzateke polita bat liburutegia txarra bada, ez da hori egin. 922 00:49:25,830 --> 00:49:29,511 923 00:49:29,511 --> 00:49:32,690 Ez dut zehazki ezagutzen. 924 00:49:32,690 --> 00:49:34,820 Den begiratu beharko nuke galdekatzeko bezala sortzen duten. 925 00:49:34,820 --> 00:49:38,980 Uste dut, hori idatzi dut bat ere bada blog post Sort duten begiratu 926 00:49:38,980 --> 00:49:46,370 SQL injekzio eraso bezala, honen antzeko zerbait, hau bada 927 00:49:46,370 --> 00:49:49,370 pasahitza eremua edo zerbait bat bezalakoa da, honen antzeko zerbait egin dezakezu. 928 00:49:49,370 --> 00:49:53,410 >> Nik uste dut izango dela oraindik lortu literalki argitaratua, 929 00:49:53,410 --> 00:49:59,200 baina peewee hori egiten dela uste dut Datuen scrubbing nolabaiteko 930 00:49:59,200 --> 00:50:01,680 egia esan, exekutatzen. aurretik 931 00:50:01,680 --> 00:50:04,510 >> Ikusleak 1: testu eremua da testu arrunta hartzeko diseinatu da, ezta? 932 00:50:04,510 --> 00:50:05,710 >> EZRA Zigmond: Bai, hala da. 933 00:50:05,710 --> 00:50:06,465 Bai. 934 00:50:06,465 --> 00:50:09,590 Beraz, uste guztien dudala, beraz, hau da, jokabide zuzena, hori egin beharko, 935 00:50:09,590 --> 00:50:12,170 baina peewee dela uste dut zorionez, ez du egiten 936 00:50:12,170 --> 00:50:13,780 babes moduko bat bere amaieran. 937 00:50:13,780 --> 00:50:16,090 Eta nahi izanez gero egiaztatu ea han- 938 00:50:16,090 --> 00:50:19,530 denean kontsultaren bat sortzen da modu daude. 939 00:50:19,530 --> 00:50:22,622 beraz, ez duzu behar zuzenean exekutatu. 940 00:50:22,622 --> 00:50:24,330 Bat hartu nahi nuke dokumentazio begiratu, 941 00:50:24,330 --> 00:50:27,930 baina, egia esan, ikusi ahal izango duzu SQL hori sortzen da, 942 00:50:27,930 --> 00:50:30,840 eta begirada bat, eta egin ziur ez dela gauza ihes egitea. 943 00:50:30,840 --> 00:50:33,700 >> Beste arrazoi bat zergatik you might SQL begiratu nahi 944 00:50:33,700 --> 00:50:37,920 peewee hori, irteera da bada da Gauzak dirudi joan benetan astiro, 945 00:50:37,920 --> 00:50:41,090 Begirada bat hartu ahal izango duzu, eta ikusi zer da benetan, egiten batzuetan delako 946 00:50:41,090 --> 00:50:44,670 erraza da nahi gabe gehitu ere, horrela idatzi duzunean, 947 00:50:44,670 --> 00:50:47,880 Nahi gabe izan daiteke datu-basea hautatu osoan lehen, 948 00:50:47,880 --> 00:50:50,230 eta gero egin moduko eragiketa batzuk Horretan, duzunean benetan 949 00:50:50,230 --> 00:50:51,320 ekarri azpimultzoa. 950 00:50:51,320 --> 00:50:53,560 >> Eta, beraz, gauzak ez badira arrazoi osoa joan, 951 00:50:53,560 --> 00:50:57,300 ona da eskaera begirada bat hartu hori benetan ohitu sortzen. 952 00:50:57,300 --> 00:50:57,800 Bai. 953 00:50:57,800 --> 00:51:02,100 >> Ikusleak 2: lehen hasi zarenean, portuan jarri 5000 bezala. 954 00:51:02,100 --> 00:51:02,904 >> EZRA Zigmond: Bai. 955 00:51:02,904 --> 00:51:06,070 Ikusleak 2: peewee batera lehenetsia da, edo da zerbait aldatu ahal izango duzu? 956 00:51:06,070 --> 00:51:10,870 EZRA Zigmond: Bai, hain portu Flask batera lehenetsia da. 957 00:51:10,870 --> 00:51:13,061 Exekutatu baduzu gabe ezer zehaztuz, 958 00:51:13,061 --> 00:51:14,310 da automatikoki egingo du hori. 959 00:51:14,310 --> 00:51:16,060 Uste dut, litzaidake ez daukat egiaztatu honetan bikoizteko, 960 00:51:16,060 --> 00:51:19,130 baina hori zehaztu dezakezu app.run batean, Uste dut horrelako zerbait egin ahal izango duzu, 961 00:51:19,130 --> 00:51:19,629 = 8080 portuan. 962 00:51:19,629 --> 00:51:22,375 963 00:51:22,375 --> 00:51:23,750 Dezagun eman en duten a benetako azkar saiatu. 964 00:51:23,750 --> 00:51:29,100 965 00:51:29,100 --> 00:51:32,230 Yeah, beraz, besterik zehaztu dezakezu portu = 8080, eta exekutatu izango da bertan, 966 00:51:32,230 --> 00:51:36,130 Horrek dut uste, exekutatu nahi izanez gero IDE gainean, ez dut saiatu honetan egindako, 967 00:51:36,130 --> 00:51:38,527 baina uste dut hori egiten baduzu 8080 atakan ran, 968 00:51:38,527 --> 00:51:40,360 ziurrenik dituzu, izan ahal zerbitzarira sartzeko aukera, 969 00:51:40,360 --> 00:51:41,870 besterik nahi webgunearen zinen. 970 00:51:41,870 --> 00:51:44,390 >> Bai, erraza da, baina aldatu duzula bada 971 00:51:44,390 --> 00:51:48,540 Edozein bezalako portu-forwarding moduko dute Egin behar duzun gauza. 972 00:51:48,540 --> 00:51:50,410 >> Beste edozein galdera? 973 00:51:50,410 --> 00:51:50,916 Bai? 974 00:51:50,916 --> 00:51:53,416 Ikusleak 1: Beraz, ikusi dut zure hori, zuk aipatu bezala ereduak, 975 00:51:53,416 --> 00:51:55,647 zehaztu egin beharko duzu objektu bakoitzeko datu-basean. 976 00:51:55,647 --> 00:51:58,105 Ez jakin gertatuko duzu, ez du Hori egiteko benetan erraza baduzu 977 00:51:58,105 --> 00:52:03,210 SQLite datu asko dituzula Interneten web bakar aplikazioa erabili nahi, 978 00:52:03,210 --> 00:52:07,210 besterik ez duzu mordo bat zehaztu ahal izango duten zure eredu desberdinak direnak? 979 00:52:07,210 --> 00:52:11,620 >> EZRA Zigmond: Bai, let me Zabaldutako benetako azkar. 980 00:52:11,620 --> 00:52:17,570 Beraz, esaten, zu izan nahi baduzu zerbait desberdin mordo bat, agian, 981 00:52:17,570 --> 00:52:22,670 Gustatzen eta ikasleei, batzuentzat Arrazoia, horrelako zerbait? 982 00:52:22,670 --> 00:52:26,870 Bai, beraz, uste dut Oraindik ere baduzu, eredu bakoitzaren 983 00:52:26,870 --> 00:52:30,652 oraindik ere besterik ez nuke base bat, esleituta, 984 00:52:30,652 --> 00:52:32,610 baina izan bazenu eredu ezberdinak direla 985 00:52:32,610 --> 00:52:35,818 dute datu-base objektu desberdinak esleitzen da, behin betiko izan ez duzula. 986 00:52:35,818 --> 00:52:43,070 Beraz, sortu berri bat badut, honen antzeko zerbait, 987 00:52:43,070 --> 00:52:47,000 eta orain hau ikaslea da hori Itxura era bitxian blog post bat bezala, 988 00:52:47,000 --> 00:52:49,390 Dudala zehaztu ahal izan du database berdinak hemen db_2 da. 989 00:52:49,390 --> 00:52:51,390 Beraz, uste dut hori egin Bide nagusia hori egin ahal izango duzu. 990 00:52:51,390 --> 00:52:54,560 991 00:52:54,560 --> 00:52:56,200 >> Cool. 992 00:52:56,200 --> 00:52:58,410 Beste edozein galdera? 993 00:52:58,410 --> 00:53:02,170 >> Beraz, besterik Amaitzeko apur bat bit, hemen baliabide batzuk dira, 994 00:53:02,170 --> 00:53:06,030 eta diapositibak horiek online argitaratu egingo da beraz, benetan dezakezu esteka horiek lortzeko. 995 00:53:06,030 --> 00:53:08,500 Baliabide onenak direla benetan Flask entzako dokumentazioa 996 00:53:08,500 --> 00:53:09,930 eta peewee beraiek. 997 00:53:09,930 --> 00:53:12,940 Benetan ondo idatzita ari dira, uste dut. 998 00:53:12,940 --> 00:53:18,180 Beraz, Flask webgunearen hemen da, eta quickstart tutoretza dutela 999 00:53:18,180 --> 00:53:20,710 egingo antzeko zehar oinez bidez zer ibili nintzen gauza, 1000 00:53:20,710 --> 00:53:23,560 baina kritikarik moduko nahi baduzu Gauza hori baino gehiago joan nintzen, eta 1001 00:53:23,560 --> 00:53:26,200 edo azaldu dudala pentsatu duzu Bide nahasia zerbait, 1002 00:53:26,200 --> 00:53:28,390 Antzeko adibide izango dute bertan. 1003 00:53:28,390 --> 00:53:31,570 >> Peewee dokumentazioa ditu, eta quickstart tutoretza dute 1004 00:53:31,570 --> 00:53:34,650 duten parametro nagusiak baino gehiago doa erabili nahi zenuke. 1005 00:53:34,650 --> 00:53:38,900 Beraz, gauzak buruz hitz egin dut the lehenetsiak berezia, eta zehaztuz, 1006 00:53:38,900 --> 00:53:42,710 Eremu mota ezberdinen dagoela erabili ahal izango dituzu, horiek guztiak izango litzateke han. 1007 00:53:42,710 --> 00:53:44,690 >> Era berean, baldin baduzu peewee buruzko galdera, 1008 00:53:44,690 --> 00:53:47,530 eta horiek bidaltzeko duzu StackOverflow on, Mutilei peewee egin benetan nor 1009 00:53:47,530 --> 00:53:49,500 aurrera doa, eta horiek erantzuten batzuetan. 1010 00:53:49,500 --> 00:53:53,200 Galdera bat, zorionez badaukazu horri erantzun ahal izango du, 1011 00:53:53,200 --> 00:53:54,867 gauza osoa idatzi zuen delako. 1012 00:53:54,867 --> 00:53:56,700 Nik uste dut hori guztia Estali nahi nuen. 1013 00:53:56,700 --> 00:53:58,930 Irteten esker. 1014 00:53:58,930 --> 00:54:02,688