1 00:00:00,000 --> 00:00:02,150 >> [Seminārs] [Kohana: Vieglie PHP pamatprogramma] 2 00:00:02,150 --> 00:00:04,000 [Brandon Liu] [Harvard University] 3 00:00:04,000 --> 00:00:07,270 [Tas ir CS50.] [CS50.TV] 4 00:00:07,270 --> 00:00:09,130 >> Hi visiem. Mans vārds ir Brandon. 5 00:00:09,130 --> 00:00:11,000 Es esmu jaunākais šeit koledžas darot datorzinātnes, un šodien mēs esam gatavojas runāt par 6 00:00:11,000 --> 00:00:14,460 Kohana, kas ir PHP web izstrādes ietvaros. 7 00:00:14,460 --> 00:00:17,260 Šodien būs dzīvot kodēšanas seminārs, 8 00:00:17,260 --> 00:00:21,000 tāpēc es esmu būtībā gatavojas pavadīt 5-10 minūtes izskaidrot, ko Kohana ir, 9 00:00:21,000 --> 00:00:25,000 un tad es esmu burtiski gatavojas būvēt super vienkāršu blogu 10 00:00:25,000 --> 00:00:28,570 jums šeit burtiski no nulles. 11 00:00:28,570 --> 00:00:32,229 Mēs ejam, lai lejupielādētu kodu Kohana mājas lapā, 12 00:00:32,229 --> 00:00:35,000 un mēs esam gatavojas sākt veidot blogu, un cerams, ka tas būs ļoti pamācošs, 13 00:00:35,000 --> 00:00:37,000 jo jūs redzēsiet varbūt varbūt es ņemšu veikt dažas kļūdas, 14 00:00:37,000 --> 00:00:39,000 un jūs redzēsiet mani atgūties no tiem, 15 00:00:39,000 --> 00:00:42,040 vai jūs redzēsiet manu domāšanas procesu, kā es veidot, izmantojot šo emuāru, 16 00:00:42,040 --> 00:00:44,000 un tikmēr, jūs arī iepazīties ar sistēmu pati. 17 00:00:44,000 --> 00:00:48,000 Cerams, ka tas būs ļoti pamācošs pasākums. 18 00:00:48,000 --> 00:00:51,370 >> Pirmkārt, kas īsti ir pamats? 19 00:00:51,370 --> 00:00:54,000 Ja esat lietojis CS50 līdz šim, jums nav īsti strādājuši ar kādu 20 00:00:54,000 --> 00:00:56,000 sistēmas vēl, un lieta ir tā. 21 00:00:56,000 --> 00:01:00,000 Jūs, iespējams, izdarīt 1 web izstrādes PSET jau 22 00:01:00,000 --> 00:01:03,000 un pieņemsim, ka jūs turpināt veidot tīmekļa vietnes un saglabāt ēkas mājas lapas. 23 00:01:03,000 --> 00:01:05,000 Jūs sākat pamanīt dažas lietas. 24 00:01:05,000 --> 00:01:07,000 Pirmā lieta, jūs ievērosiet, ka jūs, iespējams, darīt to pašu lietas 25 00:01:07,000 --> 00:01:09,150 atkal un atkal visu laiku, 26 00:01:09,150 --> 00:01:13,000 lietas, piemēram, tīrīšanas lietotāja ievades datiem, 27 00:01:13,000 --> 00:01:17,250 lietas, piemēram, organizējot failus noteiktā veidā. 28 00:01:17,250 --> 00:01:19,000 Otra lieta, jūs arī, iespējams, ievērosiet, ka jūsu kods 29 00:01:19,000 --> 00:01:21,000 var sākt kļūt ļoti, ļoti netīrs, 30 00:01:21,000 --> 00:01:24,000 un jūs varat atstāt to netīrs, un vienkārši ir ļoti grūti uzturēt, 31 00:01:24,000 --> 00:01:26,000 vai jūs varat sākt, lai strukturētu savu kodu un padarīt to modulāro 32 00:01:26,000 --> 00:01:28,510 noteiktos veidos, lai padarītu to vēl uzturams. 33 00:01:28,510 --> 00:01:31,020 >> Tas ir, ja web sistēmas pamatā ienāca 34 00:01:31,020 --> 00:01:33,680 Šie cilvēki, kas bija būvēts daudz mājas lapas, viņi teica, 35 00:01:33,680 --> 00:01:35,820 "Mums nav nepieciešams pārtaisīt šo katru reizi, kad mēs izveidotu tīmekļa vietni." 36 00:01:35,820 --> 00:01:39,050 "Kāpēc ne mēs tikai veikt kompleksu, kas dara visas šīs lietas jums 37 00:01:39,050 --> 00:01:41,250 katru reizi, kad jūs vēlaties, lai izveidotu tīmekļa vietni? " 38 00:01:41,250 --> 00:01:43,030 Un tā, ka tad, kad jūs veicat jaunu tīmekļa vietni, 39 00:01:43,030 --> 00:01:45,880 jūs tikai koncentrēties uz to, ko tieši šī konkrētā mājas lapa ir about. 40 00:01:45,880 --> 00:01:48,630 Jums nav nepieciešams atkārtot visu dažādas konfigurācijas 41 00:01:48,630 --> 00:01:53,070 un kodu atdalīšana un pārrakstīšanu kodu 42 00:01:53,070 --> 00:01:56,180 ka jūs bieži vien ir jādara, ja jūs gūstat mājas lapas. 43 00:01:56,180 --> 00:01:59,410 Ideja ir tāda, ka sistēma ļauj rakstīt augstāka līmeņa kodu 44 00:01:59,410 --> 00:02:01,030 neraizējoties par zemāka līmeņa informāciju. 45 00:02:01,030 --> 00:02:03,670 Zemāka līmeņa detalizācijas varētu būt kaut kas līdzīgs 46 00:02:03,670 --> 00:02:07,250 nodarbojas ar tīrīšanas lietotāja ievades datiem. 47 00:02:07,250 --> 00:02:09,320 Tas ir kaut kas jums nav īsti jāuztraucas par. 48 00:02:09,320 --> 00:02:12,370 Jums vajadzētu koncentrēties uz to, ko jūsu interneta piešķīrums ir faktiski par. 49 00:02:12,370 --> 00:02:14,790 Tas novērš daudz tekstveidnes kodu. 50 00:02:14,790 --> 00:02:16,640 Tā ir arhitektūra, lai savam projektam. 51 00:02:16,640 --> 00:02:18,680 >> Populārākajām vienu, būtu Model-View-Controller, 52 00:02:18,680 --> 00:02:20,380 ko es esmu gatavojas runāt par sekundē. 53 00:02:20,380 --> 00:02:22,790 Un daudz reižu šīs sistēmas iemieso procedūru kopumu, 54 00:02:22,790 --> 00:02:25,750 noteikumi, un labāko praksi, lai jūs varētu izmantot 55 00:02:25,750 --> 00:02:28,190 tā, ka tad, kad jūs pieņemt web sistēmu 56 00:02:28,190 --> 00:02:30,050 jums ir rakstīt savu kodu kādā noteiktā veidā, 57 00:02:30,050 --> 00:02:32,430 un tas ir vispārēji vienojušies darbības principi 58 00:02:32,430 --> 00:02:34,290 ko sabiedrība, kas parasti tiek uzskatīta 59 00:02:34,290 --> 00:02:36,230 labs veids, rakstot kodu. 60 00:02:36,230 --> 00:02:38,260 Tas padara jūsu kodu vairāk uzturams, vairāk izmantojami, 61 00:02:38,260 --> 00:02:40,030 tā tālāk, un tā tālāk. 62 00:02:40,030 --> 00:02:42,740 Un visbeidzot, lieta, ko es gribu uzsvērt par sistēmām 63 00:02:42,740 --> 00:02:45,980 pret bibliotēkām ir ideja par inversijas kontroles, un lieta ir tā. 64 00:02:45,980 --> 00:02:48,430 Atšķirība starp bibliotēku un sistēmu ir tā, ka ar bibliotēku 65 00:02:48,430 --> 00:02:51,990 jūs joprojām rakstiski galvenās programmas, 66 00:02:51,990 --> 00:02:54,460 un jūs esat veida atsaucoties uz bibliotēku 67 00:02:54,460 --> 00:02:56,810 un aicinot uz bibliotēku, lai darīt kaut ko par jums. 68 00:02:56,810 --> 00:02:58,180 Atšķirība starp bibliotēku un sistēmu 69 00:02:58,180 --> 00:03:01,620 ir tā, ka sistēma sākas ar kontroli, 70 00:03:01,620 --> 00:03:03,260 un tas atsaucas uz savu kodu, 71 00:03:03,260 --> 00:03:06,190 lai jūs varētu domāt par to kā - tas ir iemesls, kāpēc to sauc sistēma - 72 00:03:06,190 --> 00:03:09,700 sistēma nodrošina šo ietvaru un struktūru jūsu kodu, 73 00:03:09,700 --> 00:03:11,320 un jūs aizpildīt caurumus, 74 00:03:11,320 --> 00:03:13,990 un tas kļūs skaidrs sekundē 75 00:03:13,990 --> 00:03:16,670 ja redzat man sākt rakstīt kodu kontekstā ietvaros. 76 00:03:16,670 --> 00:03:19,130 Jūs redzēsiet, ka es esmu, aizpildot trūkumus, 77 00:03:19,130 --> 00:03:22,450 un sistēma ir sava veida kontrolēt visas kustīgās gabalus, 78 00:03:22,450 --> 00:03:27,420 un man ir jānoliek gabalu pareizajās vietās. 79 00:03:27,420 --> 00:03:29,360 >> Šodien mēs nokļūsim līdz runāt par Kohana, 80 00:03:29,360 --> 00:03:31,610 kas ir viens no daudziem PHP sistēmu. 81 00:03:31,610 --> 00:03:34,550 Ir web sistēmas, un tur ir tie, kas praktiski katru vienā valodā, 82 00:03:34,550 --> 00:03:38,330 un es esmu picking Kohana jo Kohana ir apstrīdami 83 00:03:38,330 --> 00:03:43,250 un vispārēji atzīta kā vienkāršākais PHP sistēmu uzņemt. 84 00:03:43,250 --> 00:03:45,940 Tas ir visvairāk viegls. 85 00:03:45,940 --> 00:03:48,470 Ir arī citi tiem, kas tur, kas nāk ar daudz, daudz vairāk funkcijas, 86 00:03:48,470 --> 00:03:51,590 bet tie mēdz būt grūtāk uzņemt. 87 00:03:51,590 --> 00:03:54,920 Un visbeidzot, Kohana izmanto MVC arhitektūru. 88 00:03:54,920 --> 00:03:57,780 Tas ir pietiekami viegls, lai mēs spētu izveidot projektu 89 00:03:57,780 --> 00:03:59,620 šeit tieši priekšā jūsu acīm, un jūs varat diezgan daudz 90 00:03:59,620 --> 00:04:02,780 sekot līdzi diezgan viegli. 91 00:04:02,780 --> 00:04:04,420 >> Kas ir MVC arhitektūra? 92 00:04:04,420 --> 00:04:06,540 Tas nozīmē Model-View-Controller, 93 00:04:06,540 --> 00:04:09,560 un varbūt, ja jūs domājat par to kodu, jūs esat rakstiski līdz šim 94 00:04:09,560 --> 00:04:11,280 daži no jūsu interneta attīstības psets 95 00:04:11,280 --> 00:04:14,710 Jūs, iespējams, var redzēt dažus no šī, bet parasti, kad sākat rakstīt 96 00:04:14,710 --> 00:04:16,500 sarežģītāka tīmekļa lietojumprogrammu, 97 00:04:16,500 --> 00:04:21,209 sadalījumu starp šīm 3 segmentiem kļūst arvien vairāk un vairāk acīmredzama. 98 00:04:21,209 --> 00:04:26,740 Es izklāstīts MVC šeit veida kā kaudze, 99 00:04:26,740 --> 00:04:29,920 un bieži vien jūs dzirdat cilvēki runā par kaudzēm interneta attīstību, 100 00:04:29,920 --> 00:04:33,760 un tas ir ilustrēt domu, ka 101 00:04:33,760 --> 00:04:37,510 katrs slānis, katru sastāvdaļu patiešām cenšas tikai sazināties 102 00:04:37,510 --> 00:04:40,750 starp 2 citiem komponentiem. 103 00:04:40,750 --> 00:04:44,550 Kāds piekļūst jūsu mājas lapā, kā klientu vai pārlūkprogrammu. 104 00:04:44,550 --> 00:04:48,870 Tie mijiedarbojas ar savu programmu, izmantojot skatu kodu. 105 00:04:48,870 --> 00:04:50,500 Skats kods mijiedarbojas ar kontrolieri. 106 00:04:50,500 --> 00:04:52,400 Kontrolieris mijiedarbojas ar modeli, 107 00:04:52,400 --> 00:04:55,090 un modeļa mijiedarbojas ar SQL datu bāzi. 108 00:04:55,090 --> 00:04:59,670 Un nav lēciena no, ja jūs rakstīt savu kodu pareizi. 109 00:04:59,670 --> 00:05:01,670 >> Ko šīs lietas darīt? 110 00:05:01,670 --> 00:05:06,020 Modelis būtībā ir gabals kods, kas nodarbojas ar jūsu datiem. 111 00:05:06,020 --> 00:05:09,100 Jebkas, kas nodarbojas ar savu datu bāzi, ar objektiem, ka jūs uzglabāt, 112 00:05:09,100 --> 00:05:11,280 vai ielādējot šos objektus datu bāzē, 113 00:05:11,280 --> 00:05:13,450 tas viss strādājot ar modeli. 114 00:05:13,450 --> 00:05:15,290 Varbūt jums ir objektus jūsu datu bāzē. 115 00:05:15,290 --> 00:05:17,700 Mēs spēsim izveidot modeli, kam sakars ar amatiem, 116 00:05:17,700 --> 00:05:19,760 tāpēc post var būt dažas īpašības, lai to. 117 00:05:19,760 --> 00:05:23,900 Jums var būt funkcijas ap uzglabāt šos amatus vai ielādējot amatus 118 00:05:23,900 --> 00:05:26,270 vai filtrēšanas amatu un tā tālāk, un tā tālāk, 119 00:05:26,270 --> 00:05:28,880 un tas ir viss kods, kas ir apstrādāti ar modeli. 120 00:05:28,880 --> 00:05:31,780 Kontrolieris ir sava pieteikuma loģikas, 121 00:05:31,780 --> 00:05:37,910 un daudzas dažādas lietas var iet pieteikuma loģiku. 122 00:05:37,910 --> 00:05:39,790 Ja jūs runājat ar atšķirīgu API, 123 00:05:39,790 --> 00:05:42,310 , kas var būt, ja jums ir darīšana ar pieteikumu loģiku. 124 00:05:42,310 --> 00:05:47,990 Ja jūs mēģināt, lai būtu ievest datus no vairākiem dažādiem modeļiem 125 00:05:47,990 --> 00:05:51,540 un ir apvienot tos kaut kādā veidā, kas bieži vien var apstrādāt kontrolieris. 126 00:05:51,540 --> 00:05:53,820 Piemēram, Facebook, ja jūs draugs kāds, 127 00:05:53,820 --> 00:05:58,500 tad varbūt, ka akts nosaka, ka attiecības 128 00:05:58,500 --> 00:06:00,490 var veikt kontrolieris. 129 00:06:00,490 --> 00:06:04,350 >> Un visbeidzot, skats ir kods, kas ir radīt to, ko jūs faktiski redzēt. 130 00:06:04,350 --> 00:06:07,410 Daudz reižu es domāju, ka CS50 psets 131 00:06:07,410 --> 00:06:10,050 tie nav īsti aicinām jūs guys, lai atdalītu šīs 3 lietas. 132 00:06:10,050 --> 00:06:12,430 Jūs, iespējams, ir šo lielo, garš faila kur augšā 133 00:06:12,430 --> 00:06:15,130 Jūs veikt dažas SQL vaicājumu, un varbūt tie daži pārstrādes 134 00:06:15,130 --> 00:06:17,020 uz datiem, kas iegūti no datubāzes, 135 00:06:17,020 --> 00:06:19,370 un tad jums ir visas jūsu HTML apakšā. 136 00:06:19,370 --> 00:06:22,840 Un jūs varat atrast, ka jums izveidot vairāk un vairāk lapas 137 00:06:22,840 --> 00:06:25,790 ka jūs gatavojas ir dažas koda atkārtošanos, kā arī, 138 00:06:25,790 --> 00:06:29,600 lieta ir fails kļūst ļoti liels un garš 139 00:06:29,600 --> 00:06:32,370 un kļūst smagnēja pārvaldīt. 140 00:06:32,370 --> 00:06:34,500 Iemesls, kāpēc MVC ir tik labi uzskatīt 141 00:06:34,500 --> 00:06:36,120 ir vairāku iemeslu dēļ. 142 00:06:36,120 --> 00:06:38,110 Pirmā lieta ir kaut ko sauc atdalīšana bažas 143 00:06:38,110 --> 00:06:40,370 kas ir ideja, ka, ja jums ir - 144 00:06:40,370 --> 00:06:43,520 ideāli 1 gabals koda vajadzētu darīt 1 lieta, un darīt to ļoti labi, 145 00:06:43,520 --> 00:06:47,210 un jums nevajadzētu apvienot gabalu kodu, kas darīt atšķirīgas lietas. 146 00:06:47,210 --> 00:06:49,230 Piemēram, skatīt kodu un modeļa kodu, 147 00:06:49,230 --> 00:06:51,040 tie nav īsti jābūt saistītiem. 148 00:06:51,040 --> 00:06:53,290 Viņiem nav jābūt pašiem failiem, tad, kad jūs varat, atdaliet tos ārā 149 00:06:53,290 --> 00:06:55,300 tāpēc ir viegli uzturēt. 150 00:06:55,300 --> 00:06:57,130 >> Otra lieta ir koda atkārtotu. 151 00:06:57,130 --> 00:06:59,770 Jūs varat atrast sev rakstot to pašu SQL vaicājumu, vai darot 152 00:06:59,770 --> 00:07:03,060 līdzīgi vaicājumi, kas varētu novadītā uz 1 funkciju, 153 00:07:03,060 --> 00:07:05,440 un tas ir ideja modeļu un kontrolieriem, 154 00:07:05,440 --> 00:07:09,690 kam to atsevišķu funkciju, kas jūs varētu atkārtoti izmantot dažādās vietās jūsu projektā. 155 00:07:09,690 --> 00:07:12,420 Un visbeidzot, kas ir saistīts ar žāvēšanu savu kodu, 156 00:07:12,420 --> 00:07:14,700 vai ne atkārtojot sevi, neatkārtot sevi. 157 00:07:14,700 --> 00:07:18,090 Tas ir ļoti saprotama attīstībā. 158 00:07:18,090 --> 00:07:20,110 Ikreiz, kad jūs varat, jūs nevēlaties atkārtot sevi, jo, ja jūs atkārtot sevi, 159 00:07:20,760 --> 00:07:23,400  tas ir daudz dārgāk uzturēt. 160 00:07:23,400 --> 00:07:26,040 Ja Jūs vēlaties mainīt 1 lieta, jums ir mainīt to visur, 161 00:07:26,040 --> 00:07:30,230 un kas noved pie kļūdām, un tas ir briesmīgi. 162 00:07:30,230 --> 00:07:32,010 >> Visas tiesības. 163 00:07:32,010 --> 00:07:37,270 Kādi jautājumi līdz šim par Kohana vispār? 164 00:07:37,270 --> 00:07:39,200 Lieliski. 165 00:07:39,200 --> 00:07:42,300 Tagad mēs esam gatavojas nodoties dzīvot kodēšanas sesijā 166 00:07:42,300 --> 00:07:48,050 un cerams, ka viss iet labi. 167 00:07:57,200 --> 00:08:00,050 Es esmu gatavojas būtībā veidot šo mājas lapu 168 00:08:00,050 --> 00:08:03,910 par vienu no maniem attāliem serveriem, un tādā veidā jūs guys var arī 169 00:08:03,910 --> 00:08:06,310 skatīt mājas lapā un piekļūt mājas lapā, 170 00:08:06,310 --> 00:08:10,990 un arī vide ir labāka konfigurēts nekā mana tālvadības iekārtu, 171 00:08:10,990 --> 00:08:14,580 jo tas darbojas Linux nevis OS X. 172 00:08:14,580 --> 00:08:16,260 Mēs burtiski gatavojas sākt. 173 00:08:16,260 --> 00:08:18,110 KohanaFramework.org. 174 00:08:18,110 --> 00:08:21,350 Es esmu gatavojas lejupielādēt kodu no mājas lapas. 175 00:08:21,350 --> 00:08:24,610 Es esmu gatavojas kopēt saites adresi, 176 00:08:24,610 --> 00:08:29,770 iet uz mana servera, lejupielādēt to, 177 00:08:29,770 --> 00:08:33,000 un es esmu gatavojas iegūt to. 178 00:08:38,330 --> 00:08:45,710 >> [Student] Kāds ir lielākais varat veikt tekstu? 179 00:08:45,710 --> 00:08:47,330 [Brandon Liu] Vai tas ir labāk? 180 00:08:47,330 --> 00:08:50,070 [Student] Vai tas ir izdarāms? >> [Brandon Liu] Jā, tas ir jauki. 181 00:08:50,070 --> 00:08:54,500 I lejupielādēt ZIP failu un unzipped kas stājas direktoriju sauc Kohana, 182 00:08:54,500 --> 00:08:58,820 un mēs ejam, lai pārdēvētu šo CS50-Kohana, 183 00:08:58,820 --> 00:09:01,140 un iesim iekšā 184 00:09:01,140 --> 00:09:03,610 Awesome. 185 00:09:03,610 --> 00:09:06,870 Šeit jūs redzat ķekars dažādiem failiem. 186 00:09:06,870 --> 00:09:10,140 Lielākā daļa no jums var ignorēt - we're nav gatavojas iet caur katru failu, kas ir šeit 187 00:09:10,140 --> 00:09:13,130 jo mūsu laika ierobežojumu, 188 00:09:13,130 --> 00:09:16,310 bet parasti, kad jūs instalēt Kohana, pirmā lieta, jums jādara 189 00:09:16,310 --> 00:09:23,210 ir doties uz direktoriju, 190 00:09:23,210 --> 00:09:26,050 un jūs būtībā darīt dažas vides pārbaudes un plauktiņš 191 00:09:26,050 --> 00:09:28,640 lai pārliecinātos, ka jūsu vide ir pareizi iestatīts darboties Kohana 192 00:09:28,640 --> 00:09:31,450 un pārliecinieties, ka viss ir kārtībā. 193 00:09:31,450 --> 00:09:35,510 Jūs varat redzēt, lielākā daļa lietas pagājis, bet parasti jūs vienmēr satikt šajā 1 problēmu 194 00:09:35,510 --> 00:09:38,180 ja tā pārmet, ka daži direktorijā nav rakstāma, 195 00:09:38,180 --> 00:09:40,410 un tas ir tāpēc, ka daži atļauju. 196 00:09:40,410 --> 00:09:43,080 Es nezinu, cik daudz jums puiši ir iemācījušies par failu atļaujas, kas CS50, 197 00:09:43,080 --> 00:09:47,920 bet, ja jūs darāt web izstrāde, jūs gatavojas uzskriet šo jautājumu daudz. 198 00:09:47,920 --> 00:09:58,340 Es esmu gatavojas darīt to rakstāma 199 00:09:58,340 --> 00:10:03,390 un es domāju, ka man arī ir - tur mēs ejam. 200 00:10:03,390 --> 00:10:07,040 >> Labi, tāpēc tagad jūs varat redzēt visu pagājis, 201 00:10:07,040 --> 00:10:10,000 un tagad tas jums pateiks, lai pārdēvētu failu install.php. 202 00:10:10,000 --> 00:10:15,630 Es esmu gatavojas pārvietot install.php failu installed.php, 203 00:10:15,630 --> 00:10:19,610 un tagad, ja es atsvaidzināt, 204 00:10:19,610 --> 00:10:22,810 tas dod man kļūda, un tas ir, ja atkļūdošanas nāk collas 205 00:10:22,810 --> 00:10:25,610 Tas ir, ja jūs varat redzēt, kas patiesībā notiks. 206 00:10:25,610 --> 00:10:28,460 Lieta ir, pēc noklusējuma, Kohana pieņem, ka 207 00:10:28,460 --> 00:10:31,480 jūsu projekts ir saknes direktoriju jūsu domēnu, 208 00:10:31,480 --> 00:10:35,920 tāpēc tas ir gaida, lai jūs būt demo.brandonkliu.com. 209 00:10:35,920 --> 00:10:37,540 Mums ir pateikt to, ka tas ir faktiski apakšmapi. 210 00:10:37,540 --> 00:10:39,820 Tas ir apakšmapi sauc CS50 Kohana. 211 00:10:39,820 --> 00:10:42,640 Lieta ir, tas ir kļūdaini interpretē CS50-Kohana 212 00:10:42,640 --> 00:10:45,680 kā kaut kas cits, ko es paskaidrošu jums sekundē. 213 00:10:45,680 --> 00:10:49,910 Bet es jums saku, tas ir kaut kas ir sagaidāms. 214 00:10:49,910 --> 00:10:53,700 Ko mēs gatavojamies darīt, ir, mēs ejam, lai dotos uz šo mapi sauc bootstrap.php, 215 00:10:53,700 --> 00:10:59,260 kas ir konfigurācijas mape, kurā daudz dažādas lietas, ir izveidota. 216 00:10:59,260 --> 00:11:01,570 Es atvērt, ka līdz. 217 00:11:01,570 --> 00:11:09,790 Tad varbūt viena no pirmajām lietām, ko es ņemšu darīt, ir mainīt laika zonu. 218 00:11:09,790 --> 00:11:13,910 >> Un tad paskatīsimies. 219 00:11:13,910 --> 00:11:15,180 Aha! Tieši šeit. 220 00:11:15,180 --> 00:11:18,690 Ir ķekars dažādas konfigurācijas teicieni šeit, 221 00:11:18,690 --> 00:11:21,700 bet viens es esmu meklē tas ir lieta, ko sauc bāze URL, 222 00:11:21,700 --> 00:11:24,570 un pēc noklusējuma es saņemt to, kas ir Kohana, 223 00:11:24,570 --> 00:11:29,020 bet es esmu gatavojas mainīt, ka, lai CS50-Kohana, 224 00:11:29,020 --> 00:11:32,880 un es domāju, ka vajadzētu noteikt to. 225 00:11:32,880 --> 00:11:34,150 Jā, lieliski. 226 00:11:34,150 --> 00:11:39,530 Pēc noklusējuma, lai pārliecinātos, ka tas strādā, tas saka: "Hello World". 227 00:11:39,530 --> 00:11:42,930 No kurienes tas nāk no? Kā mēs to Hello World? 228 00:11:42,930 --> 00:11:47,640 Kur tieši ir kods, kas faktiski rakstīja, ka? 229 00:11:47,640 --> 00:11:50,240 Lai saprastu, ka es ieviest šo koncepciju sauc maiņu. 230 00:11:50,240 --> 00:11:52,590 Diezgan daudz visas mājas sistēmas ir jēdziens, ko sauc par maršrutēšanu, 231 00:11:52,590 --> 00:11:57,230 kas ir gabals programmatūru, kas vēros noteiktu URL 232 00:11:57,230 --> 00:12:01,550 lai noteiktu gabals koda ietvaros jūsu sistēmā. 233 00:12:01,550 --> 00:12:07,510 Piemēram, ja jums ir kāda URL un doties uz kādu URL, piemēram foo.com / blog / visi 234 00:12:07,510 --> 00:12:11,170 tad kāda sistēma ir gatavojas darīt - vai vismaz to, kas Kohana gatavojas darīt - 235 00:12:11,170 --> 00:12:15,540 tas notiek, lai atrastu klasi sauc kontrolieris blog, 236 00:12:15,540 --> 00:12:18,720 un tas notiek, lai palaistu funkciju nosaukts darbību visu. 237 00:12:18,720 --> 00:12:20,160 Es zinu, es runāju par klases un funkcijas, 238 00:12:20,160 --> 00:12:23,860 un es zinu, jūs guys nav ietverti klases un funkcijas 239 00:12:23,860 --> 00:12:26,470 in CS50 vēl, bet tagad, 240 00:12:26,470 --> 00:12:29,800 Jūs varat domāt par klasēm, kā tikai grupas funkcijas, 241 00:12:29,800 --> 00:12:32,900 veids, kā grupēšanas funkcijas kopā. 242 00:12:32,900 --> 00:12:37,690 Tas tiešām viss, kas jums ir nepieciešams zināt. 243 00:12:37,690 --> 00:12:43,120 >> Tagad, ja mēs skatāmies uz mūsu mapju struktūru, 244 00:12:43,120 --> 00:12:47,110 iekšpusē pieteikumu mapē ir vēl viens mape ar nosaukumu nodarbības, 245 00:12:47,110 --> 00:12:49,200 un citas mapes sauc kontrolieri un modelis. 246 00:12:49,200 --> 00:12:52,530 Ja paskatās iekšā Controller mapi, 247 00:12:52,530 --> 00:12:56,330 mēs redzam, ka ir failu sauc Sveicināti, 248 00:12:56,330 --> 00:13:00,370 un jūs varat redzēt šeit ir klasi sauc Controller Sveicināti, 249 00:13:00,370 --> 00:13:02,340 un ir funkcija, ko sauc par rīcības Index, 250 00:13:02,340 --> 00:13:06,360 un ko tā dara, ir tā nosaka ķermeņa reakcijas uz Hello World. 251 00:13:06,360 --> 00:13:08,730 Tas ir, ja kods tiek rakstīts. 252 00:13:08,730 --> 00:13:11,610 Otrs jautājums ir, labi, es negāju 253 00:13:11,610 --> 00:13:13,680 blah, blah, blah, / welcome / index. 254 00:13:13,680 --> 00:13:16,250 Kā es galu galā šeit? 255 00:13:16,250 --> 00:13:20,410 Nu, tas ir tikai tāpēc, ka 256 00:13:20,410 --> 00:13:22,410 šeit apakšā mūsu bootstrap failu 257 00:13:22,410 --> 00:13:24,550 ja mēs, kas mūsu ceļu 258 00:13:24,550 --> 00:13:26,570 Jūs varat redzēt, ka tie, kas dažas noklusējumus jums. 259 00:13:26,570 --> 00:13:28,990 Noklusējuma kontrolieris ir apsveicami. Noklusējuma darbība ir rādītājs. 260 00:13:28,990 --> 00:13:31,600 Tāpēc, kad mēs ieliekam nekas tur tas automātiski devās uz starta kontrolieri 261 00:13:31,600 --> 00:13:33,940 un indeksa darbība. 262 00:13:33,940 --> 00:13:37,460 >> Viss jēga tik tālu? 263 00:13:37,460 --> 00:13:40,850 Tagad jūs varat darīt vairāk nekā tikai iet uz Controller 264 00:13:40,850 --> 00:13:43,670 un konkrēta rīcība. 265 00:13:43,670 --> 00:13:48,480 Jūs varat arī pāriet parametriem kontrolieris. 266 00:13:48,480 --> 00:13:56,390 Tāpat kā, piemēram, 267 00:13:56,390 --> 00:14:04,070 Es esmu gatavojas, lai pievienotu citu rīcību, lai šo kontrolieris, lai parādītu jums. 268 00:14:04,070 --> 00:14:09,130 Sauksim šo darbību Echo, jo tas notiek, lai jums pastāstīt, ko jūs arī tā, 269 00:14:09,130 --> 00:14:17,510 un tāpēc es esmu būtībā gatavojas sagrābt 270 00:14:17,510 --> 00:14:20,960 parametrs, kas notiek jāsūta caur mani maršrutēšanas programmas 271 00:14:20,960 --> 00:14:24,440 un, kā jūs varat redzēt šeit, 272 00:14:24,440 --> 00:14:28,440 šī līnija tieši šeit, jūs varat redzēt, ka 273 00:14:28,440 --> 00:14:31,270 Tas būtībā nozīmē, ka jums ir kontrolieris, un jums ir /, 274 00:14:31,270 --> 00:14:33,480 un jums ir rīkoties, un jums ir vēl /, 275 00:14:33,480 --> 00:14:39,140 un tas būs parametri, un tāpēc, ka mēs esam šo vārdu ID 276 00:14:39,140 --> 00:14:42,450 leņķveida iekavās, tas nozīmē, ka mēs esam nosaucot šo parametru ID. 277 00:14:42,450 --> 00:14:45,490 Vēlāk manā kontrolieris kodu, ja es gribu, lai greifers turēt šo parametru, 278 00:14:45,490 --> 00:14:51,790 Es varu izmantot kodu es uzrakstīju, atrast parametru nosaukts ID. 279 00:14:51,790 --> 00:14:59,290 Tas ir tas, ko es darīju šeit, un es esmu gatavojas atgriezties un teikt, 280 00:14:59,290 --> 00:15:07,090 "Jūs teicāt, ka". 281 00:15:07,090 --> 00:15:10,760 Un tāpēc tagad, ja es dodos uz mūsu mājas lapā, 282 00:15:10,760 --> 00:15:19,550 Es eju uz cs50-kohana/welcome/echo/Helloooo-- 283 00:15:19,550 --> 00:15:21,420 Ak, tas ir labi. 284 00:15:21,420 --> 00:15:23,930 Ir 1 solis, es izlaist. 285 00:15:23,930 --> 00:15:27,020 Tā ir daļa no dzīvu kodēšanas ideju. 286 00:15:27,020 --> 00:15:36,100 >> Lūk 1 lieta. Paskatīsimies. 287 00:15:36,100 --> 00:15:38,870 Tāpēc parasti pēc noklusējuma ar daudz no šiem tīmekļa lietojumprogrammas 288 00:15:38,870 --> 00:15:42,820 Jums ir iekļaut šo index.php lieta jūsu URL, 289 00:15:42,820 --> 00:15:46,410 jo ideja ir index.php ir sava veida ieejas punkts 290 00:15:46,410 --> 00:15:48,250 savu pieteikumu, bet, protams, 291 00:15:48,250 --> 00:15:50,110 tas ir sava veida kaitinošas, lai būtu. 292 00:15:50,110 --> 00:15:53,790 Jūs nevēlaties, lai būtu index.php parādās jūsu URL, 293 00:15:53,790 --> 00:15:56,080 un diezgan daudz katru web sistēmu no kastes 294 00:15:56,080 --> 00:15:58,440 ir šī index.php problēmu, 295 00:15:58,440 --> 00:16:03,370 , un tāpēc jums ir veikt dažus pasākumus, lai spētu noņemt to. 296 00:16:03,370 --> 00:16:07,540 Un tādēļ šajā gadījumā 297 00:16:07,540 --> 00:16:11,450 ko mēs gatavojamies darīt, ir, mēs spēsim izmantot failu ar nosaukumu. htaccess, 298 00:16:11,450 --> 00:16:13,900 un tas ir kaut kas, kas ir raksturīgas Apache web serveri, 299 00:16:13,900 --> 00:16:16,290 un to var darīt lietas, piemēram, pārrakstīt URL 300 00:16:16,290 --> 00:16:19,350 un novirzīšanas URL, un tā tālāk, un tā tālāk, 301 00:16:19,350 --> 00:16:24,280 un Kohana ir jauka pietiekami, lai nodrošinātu veidni. htaccess failu, ka mēs varam izmantot. 302 00:16:24,280 --> 00:16:28,300 >> Kā jūs varat redzēt, tur ir fails tur sauc example.htaccess, 303 00:16:28,300 --> 00:16:33,410 un mēs ejam, lai kopētu, ka, lai. htaccess. 304 00:16:33,410 --> 00:16:36,950 Es esmu gatavojas atvērt to un rediģēt to, 305 00:16:36,950 --> 00:16:40,840 un būtībā tas ķekars dažādas lietas. 306 00:16:40,840 --> 00:16:45,320 Galvenais līnijas jūs varat apskatīt, ir tieši šeit. 307 00:16:45,320 --> 00:16:49,840 Ideja ir tāda, ka tas izveido noteikums, kas saka, 308 00:16:49,840 --> 00:16:56,400 "Labi, ko jūs tipa, prepend index.php ar to." 309 00:16:56,400 --> 00:16:58,710 Jūs varat redzēt, ka. 310 00:16:58,710 --> 00:17:00,370 . * Nozīmē kaut ko, atbilst kaut ko, 311 00:17:00,370 --> 00:17:03,300 un pēc tam otrā daļa ir index.php / $ 0, 312 00:17:03,300 --> 00:17:07,410 un $ 0 attiecas uz kāda tika saskaņota iepriekš. 313 00:17:07,410 --> 00:17:09,500 Vai tas ir jēga? 314 00:17:09,500 --> 00:17:12,190 Bet patiesībā galvenais, ko es gribu mainīt, ir mainīt šo pārrakstīt bāzi, 315 00:17:12,190 --> 00:17:14,300 kas ir URL bāze. 316 00:17:14,300 --> 00:17:17,780 Tā veida pieņemts, ja jūs strādājat no. 317 00:17:17,780 --> 00:17:22,560 Es esmu gatavojas pievienot CS50 Kohana to, ka, 318 00:17:22,560 --> 00:17:26,530 un ka jau tagad, ja es noņemt index.php, 319 00:17:26,530 --> 00:17:32,110 tas ir darbs, un es esmu gatavojas pievienot dažus numurus 320 00:17:32,110 --> 00:17:36,380 lai parādītu, ka tas patiešām bija darbs. 321 00:17:36,380 --> 00:17:38,130 Izklausās labi. 322 00:17:38,130 --> 00:17:40,260 >> Kādi jautājumi līdz šim? 323 00:17:40,260 --> 00:17:42,300 [Studentu] Kā tas jāzina, lai 123? 324 00:17:42,300 --> 00:17:44,120 Ir tas, ka arguments? 325 00:17:44,120 --> 00:17:46,560 Tieši tā. Jūs varat domāt par to, tāpat kā argumentu. 326 00:17:46,560 --> 00:17:52,410 Bet dīvaini lieta, lai gan, ir tas, ka ceļš Kohana to dara 327 00:17:52,410 --> 00:17:54,910 ir tie nav darīt to tieši tā, kā argumentu. 328 00:17:54,910 --> 00:17:56,930 Jums ir, lai greifers to, kā šis. 329 00:17:56,930 --> 00:18:01,030 Jums ir greifers pieprasījuma objektu un lūgt parametra, kas ir nosaukts ID, 330 00:18:01,030 --> 00:18:03,240 un šis nosaukums ID nāk no šī sāknēšanas faila 331 00:18:03,240 --> 00:18:06,990 ka es parādīja iepriekš, un vārds ID Šajos leņķa iekavās, 332 00:18:06,990 --> 00:18:11,580 un tas, kā jūs greifers tos parametrus. 333 00:18:11,580 --> 00:18:14,010 Awesome. 334 00:18:14,010 --> 00:18:17,550 Kādi citi jautājumi? 335 00:18:17,550 --> 00:18:20,500 Tāpat kā es teicu, kontrolieri, viņi rīkojas pieteikumu loģiku, 336 00:18:20,500 --> 00:18:22,980 tā, ka ir 1 gadījums, kad jūs varat redzēt That - 337 00:18:22,980 --> 00:18:24,830 tas ir ļoti vienkāršas, bet tas joprojām ir pieteikumu loģika, 338 00:18:24,830 --> 00:18:27,980 ideja satveršanas parametru un izveidot jaunu virkni 339 00:18:27,980 --> 00:18:31,920 ka saka: "Jūs teicāt, blah," un tad spļaut, ka atpakaļ uz jums. 340 00:18:31,920 --> 00:18:34,030 Un vispār, kas jums jādara, ir jums izveidot dažādas kontrolieriem. 341 00:18:34,030 --> 00:18:36,450 Jums izveidot atsevišķu kontrolieri dažādām daļām jūsu mājas lapā. 342 00:18:36,450 --> 00:18:38,160 >> Šodien mēs esam gatavojas veikt ļoti vienkārša mājas lapa, 343 00:18:38,160 --> 00:18:40,420 un tas būs ļoti vienkāršas blog. 344 00:18:40,420 --> 00:18:43,780 Mēs ejam, lai izveidotu jaunu kontrolieri tikai par amatiem blogu. 345 00:18:43,780 --> 00:18:47,060 Bet tad, ja es būtu arī pievienot komentārus blog post, 346 00:18:47,060 --> 00:18:50,140 tad es, iespējams, vēlas, lai izveidotu jaunu kontrolieri piezīmēm. 347 00:18:50,140 --> 00:18:53,380 Ja es gribēju pievienot lietotājus, es, iespējams pievienot jaunu kontrolieri tiem lietotājiem, 348 00:18:53,380 --> 00:18:57,000 un vispār, doma ir tāda, ka, ja jums ir jauns modelis, 349 00:18:57,000 --> 00:18:59,630 jaunu datu objekts, kas jums ir darīšana ar, 350 00:18:59,630 --> 00:19:02,970 Jums ir vienu kontrolieri šo datu objektu. 351 00:19:02,970 --> 00:19:04,370 Šodien mēs esam tikai gatavojas strādāt ar 1 datu objekts, 352 00:19:04,370 --> 00:19:06,250 un tas būs posts, 353 00:19:06,250 --> 00:19:08,710 , un arī jūs varat domāt par datu objektiem kā atbilstošs tabulas. 354 00:19:08,710 --> 00:19:12,160 Parasti katra tabula atbilst 1 tipa datu objektam, 355 00:19:12,160 --> 00:19:15,160 tāpēc post galda būs 1 post modeli, 356 00:19:15,160 --> 00:19:18,230 kas ir 1 post kontrolieris atbilst tam, 357 00:19:18,230 --> 00:19:22,190 un pats par komentāriem, pats lietotājiem, un tā tālāk, un tā tālāk. 358 00:19:22,190 --> 00:19:24,070 Un tas ir vispārējs noteikums īkšķis. 359 00:19:24,070 --> 00:19:27,460 Tur būs īpaši gadījumi, kad jums var atšķirties no tā, 360 00:19:27,460 --> 00:19:29,300 bet 90% no laika, kas ir tas, ko jūs gatavojas darīt, 361 00:19:29,300 --> 00:19:32,810 un es jums parādīs, ka tas, ko mēs gatavojamies darīt šodien. 362 00:19:32,810 --> 00:19:35,490 1 vairāk koncepcija pirms mēs nodoties atpakaļ kodu, 363 00:19:35,490 --> 00:19:37,710 šī ideja par objektu relāciju kartēšanu. 364 00:19:37,710 --> 00:19:41,200 >> Jūs guys jau darīts web izstrādes PSET, 365 00:19:41,200 --> 00:19:43,820 un jūs esat redzējis, ka jums veikt SQL vaicājumu, 366 00:19:43,820 --> 00:19:46,510 un neatkarīgi no tā atgriežas pie jums ir rindas. 367 00:19:46,510 --> 00:19:50,040 Jūs saņemsiet šīs rindas, un jūs indekss tos ar kādu nosaukumu, 368 00:19:50,040 --> 00:19:55,480 nosaukums kolonnas un tabulas, 369 00:19:55,480 --> 00:19:57,630 un tas, kā jūs strādājat ar to, 370 00:19:57,630 --> 00:19:59,290 un tas var būt mazliet apgrūtinoša. 371 00:19:59,290 --> 00:20:01,810 Bet, turklāt, ja jums ir attiecības savā datu bāzē, 372 00:20:01,810 --> 00:20:05,280 kā, piemēram, ja man ir komentāri un ziņas, 373 00:20:05,280 --> 00:20:11,240 tad varbūt es gribu, lai greifers mātes amatu komentāru. 374 00:20:11,240 --> 00:20:14,350 Ja es izmantot tikai rindas SQL, tad viss, ko es varētu saņemt, ir ID 375 00:20:14,350 --> 00:20:19,310 mātesuzņēmuma amata un nevis faktisko post pati. 376 00:20:19,310 --> 00:20:21,680 Bet, kad mēs esam kodēšanas, ko mēs patiesībā gribam, ir faktiski sagrābt 377 00:20:21,680 --> 00:20:23,550  mātes post pati reizēm. 378 00:20:23,550 --> 00:20:25,730 Kas objektu relāciju kartēšanu tas ir 379 00:20:25,730 --> 00:20:29,480 tas aizņem Datubāzes vaicājumu rezultātus 380 00:20:29,480 --> 00:20:32,420 un nodod to objektiem, lai jūs, kas ir daudz jaukāk strādāt 381 00:20:32,420 --> 00:20:34,770 nekā plain bloki un rindās. 382 00:20:34,770 --> 00:20:37,550 >> Piemēram, tagad, kad man ir komentārs, iespējams, 383 00:20:37,550 --> 00:20:40,900 un es gribu, lai greifers tās mātes amatu, 384 00:20:40,900 --> 00:20:43,440 un man varbūt komentēt arrow amatu, 385 00:20:43,440 --> 00:20:45,230 tad tas faktiski dod man post objektu 386 00:20:45,230 --> 00:20:47,940 kas atbilst faktiskajam mātes pastu, ne tikai daži ID, 387 00:20:47,940 --> 00:20:52,210 ko es citādi būtu izmantot un veikt vēl vienu SQL vaicājumu, lai greifers amatu, 388 00:20:52,210 --> 00:20:57,430 kas ir apgrūtinoša un nevajadzīga. 389 00:20:57,430 --> 00:21:01,840 Un turklāt, apzinot visus šos datu rindas uz objektiem, 390 00:21:01,840 --> 00:21:03,760 Jūs varat arī pievienot vairāk funkciju objektiem, 391 00:21:03,760 --> 00:21:09,700 tā, piemēram, es runāju par to, kā nodarbības būtībā grupējumi funkcijas. 392 00:21:09,700 --> 00:21:11,620 Jūs varat domāt par to, piemēram, ka. 393 00:21:11,620 --> 00:21:15,290 Piemēram, varbūt man ir šo ziņu objektu, 394 00:21:15,290 --> 00:21:17,830 un varbūt es gribētu, lai būtu sava veida funkciju veida, kas tai pievienoti 395 00:21:17,830 --> 00:21:20,300 , kas būtībā saka man tas bija nesen ievietojis? 396 00:21:20,300 --> 00:21:23,570 Tā tika publicēta pagājušajā nedēļā, patiess vai nepatiess? 397 00:21:23,570 --> 00:21:27,320 Un tas ir funkcija, es varu pievienot uz šo objektu, 398 00:21:27,320 --> 00:21:31,300 un tas ir patiešām ērti, lai to tajā pašā vietā, 399 00:21:31,300 --> 00:21:33,820 un tur ir milzum daudz dažādu funkciju, jūs varat izveidot 400 00:21:33,820 --> 00:21:37,990 par šiem objektiem, un tas ir patiešām jauki, lai varētu pievienot to klasi, 401 00:21:37,990 --> 00:21:41,700 uz objektu, bet, ja jūs tikko bija rindas, kas nāk no jūsu datu bāzē, 402 00:21:41,700 --> 00:21:43,790 tad jūs nevarat īsti pievienot jebkuru funkcionalitāti, kas. 403 00:21:43,790 --> 00:21:47,850 Tas ir burtiski tikai dati. 404 00:21:47,850 --> 00:21:50,550 Visus jautājumus par to vispār? 405 00:21:50,550 --> 00:21:52,710 ORMs ir ļoti bieži web izstrāde, 406 00:21:52,710 --> 00:21:56,330 un ir daudz dažādu veidu ORMs, 407 00:21:56,330 --> 00:21:58,450 un Kohana ir savs ORM. 408 00:21:58,450 --> 00:22:05,050 Tas ir ļoti vienkāršas, bet jūs saņemsiet garšu, kā tas izskatās. 409 00:22:05,050 --> 00:22:08,780 >> Pieņemsim izveidot modeli mūsu blog posts, 410 00:22:08,780 --> 00:22:12,350 un pirmā lieta, mums, protams, ir jādara, ir, lai izveidotu faktisko tabulu 411 00:22:12,350 --> 00:22:16,680 mūsu datu bāzē, lai faktiski uzglabāt savus datus par šiem amatiem. 412 00:22:16,680 --> 00:22:19,260 Pirmā lieta, ko es esmu gatavojas darīt, ir doties uz phpMyAdmin. 413 00:22:19,260 --> 00:22:21,410 Vai jums puiši izmanto phpMyAdmin pirms? 414 00:22:21,410 --> 00:22:23,400 Labi, laba, lai jūs guys jau zināt, kas tas ir, 415 00:22:23,400 --> 00:22:32,200 un es esmu gatavojas izveidot jaunu tabulu sauc Kohana Raksti, 416 00:22:32,200 --> 00:22:37,820 un tas būs ļoti vienkārši. 417 00:22:37,820 --> 00:22:40,190 Es ņemšu, lai pieteiktos atpakaļ collas 418 00:23:02,620 --> 00:23:04,640 Viss, ko mēs gatavojamies darīt, šodien ir autors un ķermeni, 419 00:23:04,640 --> 00:23:11,930 tikai glabāt to vienkārši. 420 00:23:11,930 --> 00:23:15,620 Es esmu gatavojas, lai izveidotu šo tabulu, 421 00:23:15,620 --> 00:23:19,620 un tagad mēs vienkārši ir tabula, kas pārstāv mūsu posts 422 00:23:19,620 --> 00:23:23,370 ar 2 laukus mūsu autoru un mūsu organismā. 423 00:23:23,370 --> 00:23:26,290 Cita lieta, ko es esmu gatavojas darīt tagad, ir 424 00:23:26,290 --> 00:23:29,820 konfigurēt savu tīmekļa lietojumprogrammu, lai tā zina, kā izveidot savienojumu ar datu bāzi, 425 00:23:29,820 --> 00:23:31,950 un tas atkal ir kaut kas jums ir jādara ar visiem tīmekļa lietojumprogrammas. 426 00:23:31,950 --> 00:23:34,790 Jums ir pateikt to lietotāja vārdu un paroli 427 00:23:34,790 --> 00:23:36,990 un datu bāzes nosaukumu un tā tālāk, un tā tālāk 428 00:23:36,990 --> 00:23:40,000 izdomāt, kā to faktiski savienojumu ar savu datu bāzi. 429 00:23:40,000 --> 00:23:58,710 >> Ir Kohana, mums ir kaut kas ko sauc par datu bāzes modulis, 430 00:23:58,710 --> 00:24:02,690 un konfigurācijas mapē mēs esam šo mapi sauc par datu bāze, 431 00:24:02,690 --> 00:24:07,330 un, kā jūs varat redzēt, ir ķekars iestatījumiem ir noteikt šeit 432 00:24:07,330 --> 00:24:09,860 pateikt to, kas ir lietotāja vārds un parole 433 00:24:09,860 --> 00:24:13,110 par datu bāzi, lai es patiesībā var izveidot savienojumu ar to. 434 00:24:13,110 --> 00:24:15,010 Un tā kā es nevēlos, lai jūs guys tiešām zināt 435 00:24:15,010 --> 00:24:17,190 lietotāja vārdu un paroli manu datu bāzi, 436 00:24:17,190 --> 00:24:23,840 Man ir fails, kur es jau, kas to visu, un es esmu gatavojas kopēt un ielīmēt to vairāk. 437 00:24:33,080 --> 00:24:36,870 Awesome. 438 00:24:36,870 --> 00:24:39,880 Labi. Es domāju, ka tas viss konfigurācija man jādara, 439 00:24:39,880 --> 00:24:41,070 bet pieņemsim redzēt. 440 00:24:41,070 --> 00:24:43,720 Mēs turpināsim strādāt tajā, un, ja kaut kas atteici, 441 00:24:43,720 --> 00:24:47,490 tad mēs salabot. 442 00:24:47,490 --> 00:24:51,830 Tagad tas, ko es esmu gatavojas darīt, ir es esmu gatavojas izveidot jaunu kontrolieris. 443 00:24:51,830 --> 00:24:53,190 Vai tiešām, sorry. 444 00:24:53,190 --> 00:24:55,080 Vispirms man ir, lai izveidotu jaunu modeli. 445 00:24:55,080 --> 00:25:01,620 Es izveidot jaunu modeli, ko sauc par Post.php, 446 00:25:01,620 --> 00:25:12,440 un ko mēs gatavojamies darīt, ir, mēs ejam, lai izsauktu to klasi Model_Post. 447 00:25:12,440 --> 00:25:15,390 Get daži sintakse izceļot uz, 448 00:25:15,390 --> 00:25:19,750 un tad, kad es saku, "paplašina ORM", kas ir pamatā 449 00:25:19,750 --> 00:25:21,210 daži vairāk objektorientētā programmēšana, 450 00:25:21,210 --> 00:25:23,340 kas diemžēl jūs guys nav iemācījušies CS50 vēl, 451 00:25:23,340 --> 00:25:25,290 bet tas ir diezgan viegli uzņemt. 452 00:25:25,290 --> 00:25:27,950 Tas dod man visu šo papildu funkcionalitāti, kas nāk šajā ORM paketē, 453 00:25:27,950 --> 00:25:31,120 un tāpēc man ķekars papildu funkcijas un plauktiņš par brīvu, 454 00:25:31,120 --> 00:25:34,810 ko jūs redzēsiet mazliet sekundē. 455 00:25:34,810 --> 00:25:37,670 >> Tieši tagad tiešām viss, kas man jādara, ir izveidot šo klasi. 456 00:25:37,670 --> 00:25:39,160 Man nav pat nepieciešams veikt jebkuru funkciju vai kaut ko, 457 00:25:39,160 --> 00:25:41,770 bet es esmu izveidojis klase, kas attēlo tabulas, 458 00:25:41,770 --> 00:25:44,140 un tāpēc, ka es esmu pagarināt šo ORM klasē, 459 00:25:44,140 --> 00:25:51,080 Man ķekars lietas par brīvu, tāpēc tagad jums nav noteikt kaut ko vairāk uz augšu. 460 00:25:51,080 --> 00:25:53,530 Un tagad to, ko es esmu gatavojas darīt, ir es esmu gatavojas izveidot jaunu kontrolieri, 461 00:25:53,530 --> 00:25:58,480 ko es esmu gatavojas nosaukt blog.php, 462 00:25:58,480 --> 00:26:04,350 un es esmu gatavojas kopēt pār Welcome kontrolieris 463 00:26:04,350 --> 00:26:11,950 tāpēc man nav atkārtojiet daži sīkumi, 464 00:26:11,950 --> 00:26:20,720 un tagad man ir pārdēvēt to. 465 00:26:20,720 --> 00:26:24,710 Tagad tas, ko es esmu gatavojas darīt, lai pārbaudītu, lai pārliecinātos, ka viss strādā out, 466 00:26:24,710 --> 00:26:27,820 Es esmu gatavojas greifers pirmo ierakstu no manas bāzē 467 00:26:27,820 --> 00:26:32,680 un izdrukāt ķermeņa pastu uz ekrāna. 468 00:26:32,680 --> 00:26:37,920 Lai to izdarītu, ka tas, ko es esmu gatavojas darīt vispirms, ir es esmu gatavojas, lai saglabātu amatu 469 00:26:37,920 --> 00:26:48,770 mainīgā tā, ko mēs gatavojamies darīt, ir - 470 00:26:48,770 --> 00:26:52,090 in Kohana, ko jūs darīt, ir, lai greifers post objektu 471 00:26:52,090 --> 00:26:55,380 tas ir sava veida apgrūtinoša, bet jums ir darīt šo lietu sauc par ORM :: rūpnīcas, 472 00:26:55,380 --> 00:26:57,750 un tad jums iet ar nosaukumu modeli, kuru vēlaties, 473 00:26:57,750 --> 00:27:00,490 un tas atgriež ORM objektu, kas pārstāv šo modeli. 474 00:27:00,490 --> 00:27:04,860 Un tad, kā jau teicu, kad mēs paplašināt ORM objektu, 475 00:27:04,860 --> 00:27:07,320 mēs visas šīs metodes par brīvu, tā, piemēram, 476 00:27:07,320 --> 00:27:09,200 mēs iegūtu šo jauno funkciju sauc par "atradīsiet visu," 477 00:27:09,200 --> 00:27:12,160 kas automātiski atgriežas katru amatu bāzē, 478 00:27:12,160 --> 00:27:14,850 kas ir diezgan ērti. 479 00:27:14,850 --> 00:27:17,480 >> Un tagad organismā es esmu gatavojas atgriezties 480 00:27:17,480 --> 00:27:24,860 Pirmais post un atgriezties savu ķermeni. 481 00:27:24,860 --> 00:27:27,930 Un, protams, man ir nepieciešams, lai izveidotu ziņu, 482 00:27:27,930 --> 00:27:31,880 tāpēc pieņemsim ievietot jaunu post. 483 00:27:31,880 --> 00:27:37,870 Es saku: "Brandon, mana pirmā pastu." 484 00:27:37,870 --> 00:27:40,010 Awesome. 485 00:27:40,010 --> 00:27:45,910 Un tagad mēs esam gatavojas doties uz blogus 486 00:27:45,910 --> 00:27:50,960 un, ja viss strādā labi - ak, tas ir kādu citu mēms failu atļauja lieta vēlreiz. 487 00:27:50,960 --> 00:27:56,090 Turiet par 1 sekundi. Tas ir sava veida absurds. 488 00:28:06,700 --> 00:28:08,490 Tur mēs ejam. Labi. 489 00:28:08,490 --> 00:28:10,040 Es noteikti šo atļauju problēmu. 490 00:28:10,040 --> 00:28:12,040 Tā centās radīt dažus failus un kādu žurnālu, 491 00:28:12,040 --> 00:28:15,400 un atļaujas, atkal nebija pareizi uzstādīts, tāpēc es to 492 00:28:15,400 --> 00:28:18,320 tā, ka šie faili ir rakstāms un izpildāmā 493 00:28:18,320 --> 00:28:21,090 tāpēc tas patiešām varētu pieteikties uz lietām. 494 00:28:21,090 --> 00:28:24,220 Tagad tas dod man vēl vienu izņēmumu sakot, "klases ORM nav atrasts," 495 00:28:24,220 --> 00:28:26,960 un tas ir tāpēc, ka es aizmirsu vēl viens solis. 496 00:28:26,960 --> 00:28:37,010 Tas ir pārāk slikti. 497 00:28:37,010 --> 00:28:40,270 Jo sāknēšanas mapju fails ir šie moduļi šeit, 498 00:28:40,270 --> 00:28:42,480 ko jūs varat izvēlēties iespējot vai atspējot. 499 00:28:42,480 --> 00:28:44,340 Tie ir ķekars dažādas pazīmes, ka jūs varat izvēlēties, lai izmantotu 500 00:28:44,340 --> 00:28:46,180 ietvaros Kohana, kas ir sava veida jauki. 501 00:28:46,180 --> 00:28:49,090 >> Piemēram, viņiem ir autentifikācijas moduli 502 00:28:49,090 --> 00:28:51,170 kuru jūs varat izmantot autentiskumu lietotājiem. 503 00:28:51,170 --> 00:28:53,390 Viņi ir caching moduli, ja jūs vēlaties, lai īstenotu 504 00:28:53,390 --> 00:28:57,870 daži caching atpakaļ beigām, lai padarītu pieteikumu darbu ātrāk un plauktiņš kārtošanas. 505 00:28:57,870 --> 00:29:02,140 Mums ir nepieciešams, lai ļautu datubāzi un ORM moduli, 506 00:29:02,140 --> 00:29:04,280 jo kā jau teicu, mēs, izmantojot datu bāzi, protams, 507 00:29:04,280 --> 00:29:08,200 un mums arī ir nepieciešams, lai ļautu ORM moduli, 508 00:29:08,200 --> 00:29:12,220 tāpēc, ka mēs gribētu, lai būtu papildu funkcionalitāti, kas ir jauki, ir. 509 00:29:12,220 --> 00:29:14,240 Viss, kas man ir jādara, ir uncomment šiem 2 līnijas, 510 00:29:14,240 --> 00:29:18,760 un tagad, ja es atsvaidzināt, tas man deva vēl vienu kļūdu. 511 00:29:18,760 --> 00:29:22,100 Tā saka: "Model_Post Klase nav atrasts." 512 00:29:22,100 --> 00:29:30,210 Tagad tas ir labs problēma ir. 513 00:29:30,210 --> 00:29:37,660 Paskatīsimies. 514 00:29:37,660 --> 00:29:42,200 To publiskot. 515 00:29:42,200 --> 00:29:46,450 Nē Pagaidi. 516 00:30:11,610 --> 00:30:13,160 Ak, mīļā. 517 00:30:13,160 --> 00:30:18,590 Es nezinu, kāpēc tas nav iespējams atrast to. 518 00:30:18,590 --> 00:30:21,030 Tas ir tiešām dīvaini. 519 00:30:21,030 --> 00:30:23,820 Man ir šīs klases šeit. 520 00:30:23,820 --> 00:30:28,650 Es domāju, es varētu būt - oh. 521 00:30:28,650 --> 00:30:32,010 Es esmu tik mēms. Es aizmirsu pievienot PHP tagu. 522 00:30:32,010 --> 00:30:34,670 Tas ir iemesls, kāpēc. 523 00:30:34,670 --> 00:30:41,260 Tagad man ir, lai atsauktu, ka 1 maiņa es vienkārši darīju. 524 00:30:41,260 --> 00:30:44,270 >> Labi. Tur mēs ejam. 525 00:30:44,270 --> 00:30:47,500 Tas bija tiešām muļķīgi. Man nebija atvēršanas PHP tagu. 526 00:30:47,500 --> 00:30:49,900 Bet kā jūs varat redzēt, tagad tas strādā pareizi, vai ne? 527 00:30:49,900 --> 00:30:51,240 Mums ir 1 post. 528 00:30:51,240 --> 00:30:54,730 Mēs satvert pirmo ziņojumu, un tagad mēs izdrukāt savu ķermeni. 529 00:30:54,730 --> 00:30:58,010 Lieliski. Fantastiska. 530 00:30:58,010 --> 00:31:01,470 Visus jautājumus līdz šim? 531 00:31:01,470 --> 00:31:04,100 Nē? Kādi jautājumi? 532 00:31:04,100 --> 00:31:08,340 Labi, tāpēc mēs vienkārši radīja post modeli, ļoti vienkāršas, 533 00:31:08,340 --> 00:31:10,930 un mēs esam gatavojas pievienot dažas funkcijas vēlāk. 534 00:31:10,930 --> 00:31:13,600 Mēs varam pievienot apstiprinājumi un filtrēšanu. 535 00:31:13,600 --> 00:31:15,650 Apstiprinājumi ir viena no lietām, 536 00:31:15,650 --> 00:31:18,150 ka sistēmas atrisinātu jums ļoti, ļoti labi, 537 00:31:18,150 --> 00:31:21,310 un es nedomāju, ka jūs guys bija jādara, lai jūsu CS50 PSET, 538 00:31:21,310 --> 00:31:24,000 bet, ja jūs interneta attīstību, lai jūsu gala projektu, 539 00:31:24,000 --> 00:31:26,280 jūs, iespējams gatavojas vēlaties darīt kādu validācijas veida, 540 00:31:26,280 --> 00:31:28,290 tāpat kā nav tukšu lietotājvārdus, 541 00:31:28,290 --> 00:31:31,950 varbūt kam lietotājs ar vismaz dažās garumā, lietām, piemēram, ka. 542 00:31:31,950 --> 00:31:34,750 Un tas ir patiešām apgrūtinoši, lai īstenotu šīs lietas ar sevi, 543 00:31:34,750 --> 00:31:37,390 un diezgan daudz katru web sistēmu tas jums 544 00:31:37,390 --> 00:31:41,140 un ļauj jums darīt to ļoti tīrā veidā. 545 00:31:41,140 --> 00:31:44,340 Un modelis ir, ja jūs parasti paust šo validācijas kārtulas, 546 00:31:44,340 --> 00:31:48,790 jo tas apstiprināšanu, vai paraugs ir derīgs vai nē. 547 00:31:48,790 --> 00:31:51,350 >> Bet tagad, mēs ejam, lai likt, ka tikai vēlāk, 548 00:31:51,350 --> 00:31:53,520 un tagad mēs esam gatavojas strādāt uz citu daļu, 549 00:31:53,520 --> 00:31:55,400 un mēs esam gatavojas izmēģināt un veikt jaunu skatu 550 00:31:55,400 --> 00:31:59,580 kas uzskaita visus amatus. 551 00:31:59,580 --> 00:32:02,490 Iesaistītās veicot jaunu prasību uzskaitot visus amatus soļi 552 00:32:02,490 --> 00:32:04,810 ir satvert sarakstu visu posts 553 00:32:04,810 --> 00:32:11,990 un pēc tam padarīt sarakstu visu posts caur nolūkā. 554 00:32:11,990 --> 00:32:16,420 Tieši šeit, par laimi pietiekami, mēs jau satvert visus amatus 555 00:32:16,420 --> 00:32:20,310 Izmantojot šo pirmo rindu, atrast visas funkcijas, 556 00:32:20,310 --> 00:32:22,520 un tagad to, ko mēs gatavojamies darīt, ir tik tālu 557 00:32:22,520 --> 00:32:25,350 Es esmu tieši nosakot ķermeņa atbildes 558 00:32:25,350 --> 00:32:29,090 nokārtojot virkni, bet tagad es vēlos izmantot skatu, 559 00:32:29,090 --> 00:32:31,870 un starpība starp mērķi un vienkārši dara to 560 00:32:31,870 --> 00:32:35,330 ir, lai es varētu būt jauka, liels HTML veidni, 561 00:32:35,330 --> 00:32:37,710 un ko es varu darīt, ir nodot to daži mainīgie 562 00:32:37,710 --> 00:32:42,200 un tad ir skats automātiski aizpildīt savu veidni 563 00:32:42,200 --> 00:32:44,690 Izmantojot šos mainīgos. 564 00:32:44,690 --> 00:32:50,780 Ko es darīšu, ir es izveidot jaunu skatu, 565 00:32:50,780 --> 00:32:55,940 un es ņemšu nosaukt skata kaut ko līdzīgu "blog / index" 566 00:32:55,940 --> 00:33:08,480 un es esmu gatavojas būtībā saistīt to - ak, ko es rakstīt? 567 00:33:08,480 --> 00:33:12,910 Manas smadzenes ir kaut kur citur. 568 00:33:12,910 --> 00:33:16,600 Es esmu gatavojas saistīt amata mainīgo viedoklim, 569 00:33:16,600 --> 00:33:19,950 tā, kā viedoklis ir piekļuve šim post mainīgo. 570 00:33:19,950 --> 00:33:26,140 >> Un tāpēc tagad man ir nepieciešams, lai izveidotu šo viedokli, 571 00:33:26,140 --> 00:33:28,500 tāpēc šeit mēs esam šo mapi sauc par "Apskates," 572 00:33:28,500 --> 00:33:32,150 un, pirmkārt, es esmu gatavojas izveidot jaunu mapi ar šo sauc par "Blog". 573 00:33:32,150 --> 00:33:35,810 Tas ir jauki. Tādā veidā mēs varam būt jauka hierarhija mūsu viedokli. 574 00:33:35,810 --> 00:33:43,910 Un tad es esmu gatavojas izveidot vēl vienu failu, kas tur sauc "index.php". 575 00:33:43,910 --> 00:33:45,780 Awesome. 576 00:33:45,780 --> 00:33:52,930 Patiesībā, pieņemsim tos gan šeit. 577 00:33:52,930 --> 00:33:56,760 Making skata failu, ir iespējams, vienkāršākais daļa no šī visa, 578 00:33:56,760 --> 00:33:59,090 un tie, iespējams, ir lietas, jūs jau esat iepazinušies ar. 579 00:33:59,090 --> 00:34:01,240 Mēs ejam, lai darīt kaut ko patiešām vienkārša, 580 00:34:01,240 --> 00:34:05,360 sākums sakot: "Mana sarakstu blog posts." 581 00:34:05,360 --> 00:34:14,860 Tad mēs varam iet cauri, 582 00:34:14,860 --> 00:34:17,920 un mēs varam atkārtot, izmantojot amatiem masīvs, 583 00:34:17,920 --> 00:34:21,760 paķert katru amatu un teikt kaut ko līdzīgu - 584 00:34:21,760 --> 00:34:25,290 varbūt pievienotu līniju 585 00:34:25,290 --> 00:34:42,460 un pēc tam izdrukāt autors un ķermeni. 586 00:34:42,460 --> 00:34:44,480 Ka jēga tik tālu? 587 00:34:44,480 --> 00:34:50,870 Un pieņemsim redzēt, ja tā darbojas. 588 00:34:50,870 --> 00:34:53,489 Nekas nav noticis. 589 00:34:53,489 --> 00:34:55,090 Nez kāpēc. 590 00:34:55,090 --> 00:34:58,760 Ak, es nokavēju soli 1. Ļoti muļķīgi no manis. 591 00:34:58,760 --> 00:35:01,640 Es radīju viedokli, bet man nebija noteikti viedokli par atbildi, 592 00:35:01,640 --> 00:35:03,190 tāpēc jums ir jādara vairāk kā 1 lieta. 593 00:35:03,190 --> 00:35:12,610 Kas jums jādara, "šo atbildi ķermeni" un noteikt, ka tas ir skats. 594 00:35:12,610 --> 00:35:14,760 Tur mēs ejam. 595 00:35:14,760 --> 00:35:17,200 Mums ir mūsu pozīciju, un tad mums ir post, 596 00:35:17,200 --> 00:35:20,500 un tikai sākas, pieņemsim ievietot citā amatā 597 00:35:20,500 --> 00:35:23,390 lai mēs varētu redzēt sarakstu. 598 00:35:31,800 --> 00:35:36,650 Un ievietot šos 2 amata vietas, 599 00:35:36,650 --> 00:35:39,500 un tagad, ja es atsvaidzinātu lapu, 600 00:35:39,500 --> 00:35:42,060 mēs redzam visus šos amatus šeit. 601 00:35:42,060 --> 00:35:44,250 >> Vai, ka jēga tik tālu? 602 00:35:44,250 --> 00:35:46,400 Jā, jautājums? Ak, labi. 603 00:35:46,400 --> 00:35:51,440 Kā jūs varat redzēt, mēs esam spējuši nošķirt visus šos kodus, kas 604 00:35:51,440 --> 00:35:53,920 dažādās sadaļās, un tad jūs varat redzēt, tas ir ļoti skaidrs, ar skatu kodu. 605 00:35:53,920 --> 00:35:57,810 Šis fails šeit, kas pārstāv viedokli, 606 00:35:57,810 --> 00:36:01,220 tas tikai rūp, kas pārstāv datus izlikšana datus. 607 00:36:01,220 --> 00:36:04,310 Tas izpaužas pagājis vismaz kaut kādus datus, un visiem tas ir tikai parādīt to jums. 608 00:36:04,310 --> 00:36:07,660 Visās citās savu kodu, jums nebūs jāuztraucas par kādu, kas, 609 00:36:07,660 --> 00:36:10,480 un tāpat, jūsu viedoklis kods nav jāuztraucas neko 610 00:36:10,480 --> 00:36:13,390 kā piekļūt datu bāzi un tā tālāk, un tā tālāk, 611 00:36:13,390 --> 00:36:19,950 kas ir tiešām laba, un padara jūsu kodu daudz uzturams. 612 00:36:19,950 --> 00:36:23,390 Tāpat kā es teicu, viedokļi, viņi ir dinamisks, jo 613 00:36:23,390 --> 00:36:27,080 tas ir 1 fails, bet tas radītu dažādus viedokļus 614 00:36:27,080 --> 00:36:29,940 pamatojoties uz mainīgajiem jūs faktiski iet uz, 615 00:36:29,940 --> 00:36:32,370 un turklāt, tur ir daudz dažādu palīgs funkcijas 616 00:36:32,370 --> 00:36:34,230 ka jūs varat izmantot, lai palīdzētu jums rakstīt savu kodu ātrāk, 617 00:36:34,230 --> 00:36:36,320 ko es jums parādīs tikai sekundi. 618 00:36:36,320 --> 00:36:38,050 Jā. 619 00:36:38,050 --> 00:36:42,490 >> [Student] Tātad, 0 $ ir kontrolieris, vai ne? 620 00:36:42,490 --> 00:36:44,000 Ka otrā lieta. 621 00:36:44,000 --> 00:36:46,090 Jautājums ir, ir $ 0 kontrolieris? 622 00:36:46,090 --> 00:36:48,610 0 $ ir mainīgs es izveidojis šeit. 623 00:36:48,610 --> 00:36:51,320 I izveidojis viedokli pirmās. Es piešķirts to uz kādu mainīgo. 624 00:36:51,320 --> 00:36:54,960 Tad es pagājis to šo funkciju, noteikt to kā ķermeņa atbildes. 625 00:36:54,960 --> 00:36:57,260 Vai tas ir jēga? 626 00:36:57,260 --> 00:37:02,200 [Studentu] Tāpēc ir uzskats :: fabrika, ir skats kā klasē 627 00:37:02,200 --> 00:37:06,610 vai bibliotēka [dzirdams] rūpnīcas funkcija? 628 00:37:06,610 --> 00:37:10,640 Jautājums ir par to view :: rūpnīcas darbību, 629 00:37:10,640 --> 00:37:14,020 un būtībā tas ir vēl daži objektorientētā programmēšana pēc būtības. 630 00:37:14,020 --> 00:37:18,000 Skats ir skats klasē, un tā ir metode, ko sauc par "Factory" 631 00:37:18,000 --> 00:37:24,170 un tas ir veids, kā greifers objektu, kas ir ar nosaukumu "blog / index." 632 00:37:24,170 --> 00:37:27,140 Un tas ir vēl daži objektorientētā programmēšana sīkumi 633 00:37:27,140 --> 00:37:33,010 ka es neesmu gatavojas iedziļināties šeit pārāk daudz. 634 00:37:33,010 --> 00:37:36,400 Tagad, protams, mēs vēlamies izveidot jaunas amata vietas, 635 00:37:36,400 --> 00:37:38,790 bet mēs negribam to darīt, izmantojot datu bāzi, 636 00:37:38,790 --> 00:37:41,280 tāpēc mēs spēsim izveidot jaunu prasību izveidot jaunu amatu, 637 00:37:41,280 --> 00:37:43,050 un tur ir daudz lietas, kas mums jādara. 638 00:37:43,050 --> 00:37:45,910 >> Pirmā lieta, ko mēs gatavojamies darīt - pieņemsim risinātu šīs lietas pa vienam. 639 00:37:45,910 --> 00:37:48,320 Pirmā lieta, ko mēs darīt, ir, mēs esam ieguvuši, lai izveidotu formu 640 00:37:48,320 --> 00:37:54,460 ievietošanas jaunu ziņu, 641 00:37:54,460 --> 00:37:57,360 bet es esmu arī gatavojas pievienot jaunu darbību, pirmkārt, 642 00:37:57,360 --> 00:38:01,050 tāpēc pievienojot jaunu darbību, ir tikpat viegli, kā 643 00:38:01,050 --> 00:38:03,490 pievienojot jaunu funkciju ar jūsu kontrolieris, 644 00:38:03,490 --> 00:38:13,710 un tagad es esmu gatavojas darīt kaut ko ļoti pamata, 645 00:38:13,710 --> 00:38:20,850 vienkārši paķert šo viedokli, un pēc tam, vienkārši parādīt to jums. 646 00:38:20,850 --> 00:38:26,220 Un tad tagad es esmu gatavojas izveidot jaunu skatu failu, 647 00:38:26,220 --> 00:38:33,690 un es esmu gatavojas sākt rakstīt daži sīkumi. 648 00:38:33,690 --> 00:38:36,540 Kas ir jauka par Kohana ir tas, ka tie nodrošina daudz dažādu palīgs funkcijas 649 00:38:36,540 --> 00:38:38,790 , lai jūs varētu rakstīt skatu kodu vieglāk, 650 00:38:38,790 --> 00:38:41,970 un 1 no tiem palīgs funkciju vai palīgs moduļiem 651 00:38:41,970 --> 00:38:45,860 ir ap rakstot formas. 652 00:38:45,860 --> 00:38:49,460 Rakstīšanai formas, man nav īsti ir tieši rakstīt jebkurā HTML sevi. 653 00:38:49,460 --> 00:38:51,100 Jums puiši ir rakstīts HTML formas. 654 00:38:51,100 --> 00:38:54,850 Jūs zināt, kā tas var būt ļoti, ļoti sāpīgi un apgrūtinoši rakstīt formas. 655 00:38:54,850 --> 00:38:59,970 Tas nav jautri, tāpēc par laimi, 656 00:38:59,970 --> 00:39:04,860 mēs varam būtībā uzrakstīt formā, izmantojot Kohana s 657 00:39:04,860 --> 00:39:11,190 forma palīgs funkcijas, lai to izdarītu mums. 658 00:39:11,190 --> 00:39:17,340 Mēs ejam, lai būtībā ir laukus katru lieta mums ir, 659 00:39:17,340 --> 00:39:23,160 tāpēc viens autoriem un vienu institūciju. 660 00:39:23,160 --> 00:39:27,090 Mēs ejam, lai būtu etiķeti, un mēs ejam, lai būtu ievadi. 661 00:39:37,450 --> 00:39:41,360 >> Un tad beidzot, mēs esam nāksies iesniegumu. 662 00:39:49,350 --> 00:39:52,230 Un, kā jūs varat redzēt, tas ir daudz tīrāks rakstīt 663 00:39:52,230 --> 00:39:58,150 par visu, kas netīrs HTML, kas ir sava veida jauki. 664 00:39:58,150 --> 00:40:00,930 Piešķirts, ir arī citi interneta sistēmas, kas ir tā pat tīrāks nekā, 665 00:40:00,930 --> 00:40:04,440 bet vismaz tas ir labāk, nekā rakstot HTML pats. 666 00:40:09,400 --> 00:40:11,130 Awesome, tāpēc tas ir tas, ko jūs redzat. 667 00:40:11,130 --> 00:40:13,530 Tas ir sava veida netīrs, 668 00:40:13,530 --> 00:40:19,720 tāpēc es esmu gatavojas pievienot rindiņas pārtraukumu tur 669 00:40:19,720 --> 00:40:21,180 lai kas izskatās mazliet nicer. 670 00:40:21,180 --> 00:40:23,330 Nu, protams, tas joprojām izskatās ļoti, ļoti slikti, bet mēs esam tikai koncentrējas 671 00:40:23,330 --> 00:40:26,050 uz funkcionalitāti, lai tagad, nevis par estētiku. 672 00:40:26,050 --> 00:40:28,010 Nav laika, lai to visu. 673 00:40:28,010 --> 00:40:30,600 Un, kā jūs varat redzēt, tagad mums ir super pamatforma, 674 00:40:30,600 --> 00:40:32,080 kas ir sava veida jauki. 675 00:40:32,080 --> 00:40:36,730 Šis kods Es teiktu, ka ir tīrāks nekā mēģināt rakstīt HTML forma sevi, 676 00:40:36,730 --> 00:40:40,290 tāpēc tas ir jauki. 677 00:40:40,290 --> 00:40:42,030 Ko tālāk? 678 00:40:42,030 --> 00:40:49,260 Tagad mums ir nepieciešams darīt lietas ar rīcību. 679 00:40:49,260 --> 00:40:51,240 Parasti, ja jūs rakstīt HTML formas, 680 00:40:51,240 --> 00:40:54,070 Jums pateikt to, ja tas notiek, lai iesniegtu veidlapu. 681 00:40:54,070 --> 00:40:56,050 Pēc noklusējuma lielākā daļa tīmekļa ietvaros, 682 00:40:56,050 --> 00:40:58,200 tā iesniedz tieši tādu pašu URL, tāpēc lieta ir, 683 00:40:58,200 --> 00:41:01,310 Ja sūtāt get pieprasījumu / blog / new, 684 00:41:01,310 --> 00:41:03,240 tas ir parādīt jums formu, 685 00:41:03,240 --> 00:41:06,810 bet, ja jūs sūtīt post pieprasījumu / blog / new ar datiem, 686 00:41:06,810 --> 00:41:10,000 tas būtu tiešām mēģināt saglabāt šo amatu 687 00:41:10,000 --> 00:41:13,300 un kaut ko darīt ar to. 688 00:41:20,630 --> 00:41:22,180 >> Ko mēs gatavojamies darīt, ir 689 00:41:22,180 --> 00:41:25,320 būtībā viss, kas mums ir jādara, lai pārbaudītu, vai tas ir post pieprasījumu vai GET pieprasījumu 690 00:41:25,320 --> 00:41:29,350 ir pārbaudīt, kādi ir post mainīgie var iestatīt. 691 00:41:29,350 --> 00:41:34,560 Un, ja pēc mainīgais ir uzstādīts, tad mēs ejam, lai mēģinātu izveidot jaunu amatu. 692 00:41:34,560 --> 00:41:38,440 Atgādināsim, ka mēs vienkārši darīt to, 693 00:41:38,440 --> 00:41:41,090 un tas rada jaunu amatu, un mēs burtiski gatavojas 694 00:41:41,090 --> 00:41:51,150 noteikt tās jomas, piemēram, tas, 695 00:41:51,150 --> 00:41:55,640 un tad mēs ejam, lai to saglabātu. 696 00:41:55,640 --> 00:41:59,200 Un tad es esmu gatavojas novirzīt 697 00:41:59,200 --> 00:42:07,660 indeksa lapu, lai viņi varētu redzēt mūsu sarakstu ar amatu vēlreiz. 698 00:42:07,660 --> 00:42:09,620 Mēģināsim to. 699 00:42:09,620 --> 00:42:15,160 Es saku: "Brandon" 700 00:42:15,160 --> 00:42:18,140 un pēc tam iesniegt amatu, un, ja viss noritēs labi, 701 00:42:18,140 --> 00:42:21,390 kā jūs varat redzēt, tas novirzīts mani uz indeksu lapā, 702 00:42:21,390 --> 00:42:24,140 un, ja es ritiniet uz leju, mums ir nesen ievietots amatu. 703 00:42:24,140 --> 00:42:26,430 Yay! 704 00:42:26,430 --> 00:42:28,430 Jā, jautājums. 705 00:42:28,430 --> 00:42:31,760 >> [Student] Ko darīt, ja Jums bija iekļauta tieši tas pats 706 00:42:31,760 --> 00:42:33,380 esat ievadījis pirms? 707 00:42:33,380 --> 00:42:36,950 Vai to pārbaudīt, lai pārliecinātos, ka jums nav dublēt 708 00:42:36,950 --> 00:42:38,810 pats iesniegums? 709 00:42:38,810 --> 00:42:41,660 Ir noklusējuma, nē, jo pēc noklusējuma - 710 00:42:41,660 --> 00:42:46,470 sorry, jautājums ir, ja ievadāt tieši tādu pašu datu veidā 711 00:42:46,470 --> 00:42:50,180 un apgalvo, ka tas ļaus jums ievietot dublikātu objektu, 712 00:42:50,180 --> 00:42:52,550 dublēt ierakstu būtībā? 713 00:42:52,550 --> 00:42:54,070 Tieši tagad, jā, tas ļaus jums darīt, ka, 714 00:42:54,070 --> 00:42:58,860 jo datu bāzēs, tas ir ļoti lietderīga, lai būtu pilnīgi dublēt rindas, 715 00:42:58,860 --> 00:43:02,260 bet, ja tas ir bažas, tad jūs varat pievienot apstiprinājumi, piemēram, 716 00:43:02,260 --> 00:43:06,430 lai pārliecinātos, ka, ja tas ir tieši tāds pats, kā kaut ko, kas jau pastāv, 717 00:43:06,430 --> 00:43:08,720 tad saka, ka tas ir nederīgs objekts, 718 00:43:08,720 --> 00:43:11,200 un tad jūs pat varat norādīt savu kļūdas ziņojumu 719 00:43:11,200 --> 00:43:14,390 un saka, "Invalid jo tas jau pastāv", vai kaut kas tamlīdzīgs. 720 00:43:14,390 --> 00:43:22,420 Bet šajā gadījumā, es varētu tikai radīt kaut ko dublēt. 721 00:43:22,420 --> 00:43:26,010 Tagad pamēģināsim un pievienot dažas apstiprinājumi. 722 00:43:26,010 --> 00:43:30,400 Problēma ar tas tieši tagad ir tas, ka 723 00:43:30,400 --> 00:43:34,220 Es varētu burtiski iesniegt pilnīgi tukšu amatu. 724 00:43:34,220 --> 00:43:37,500 Es varētu noklikšķināt uz šīs pogas tieši tagad, un tur mēs ejam. 725 00:43:37,500 --> 00:43:40,290 Jūs nevarat īsti redzēt, bet tas papildus līnija šeit 726 00:43:40,290 --> 00:43:43,830 norāda, ka man burtiski ir jaunu post. 727 00:43:43,830 --> 00:43:46,050 Tas vienkārši ir tukša autors un tukšu ķermeni, 728 00:43:46,050 --> 00:43:48,630 un mēs nevēlamies, lai cilvēki varētu darīt. 729 00:43:48,630 --> 00:43:52,550 Tas ir, ja apstiprinājums nāk collas 730 00:43:52,550 --> 00:43:57,540 >> Es varu iet uz manu modeli objektu, 731 00:43:57,540 --> 00:43:59,530 un tagad es varu pievienot jaunu funkciju, kas nosaka 732 00:43:59,530 --> 00:44:02,000 ko apstiprināšanas noteikumi, man vajadzētu pievienot šo modeli 733 00:44:02,000 --> 00:44:06,840 lai pārliecinātos, ka tā ir derīga, vai arī norādīt, ko tas nozīmē būt derīgs post? 734 00:44:06,840 --> 00:44:10,210 Un es gribu teikt, tas ir tikai derīgs post, ja gan autors un ķermeņa 735 00:44:10,210 --> 00:44:15,150 nav tukša, un tas ir kā jūs to Kohana. 736 00:44:15,150 --> 00:44:18,750 Izveidojot jaunu funkciju sauc "noteikumi," 737 00:44:18,750 --> 00:44:20,210 un tad jūs būtībā atgriezt asociatīvo masīvu 738 00:44:20,210 --> 00:44:24,230 kas nosaka validācijas noteikumus par šo objektu. 739 00:44:24,230 --> 00:44:27,530 Mēs ejam, lai atgrieztos masīvs, un tad to, ko mēs gatavojamies darīt, ir 740 00:44:27,530 --> 00:44:32,820 saka "autors", tā iet uz masīva, 741 00:44:32,820 --> 00:44:37,720 kas dodas uz citu masīvu sauc par "nav tukšs." 742 00:44:37,720 --> 00:44:41,480 Un tad es esmu gatavojas teikt "ķermeni." 743 00:44:50,980 --> 00:44:54,120 Labi, un sintakse šo un struktūru, lai tas 744 00:44:54,120 --> 00:44:56,530 var izskatīties mazliet apgrūtinoša un nedaudz sarežģītāk. 745 00:44:56,530 --> 00:44:59,330 Ja jūs lasīt dokumentus, tas ir diezgan vienkārši, lai noskaidrotu, 746 00:44:59,330 --> 00:45:02,500 Bet būtībā tas ir tas, kas jums jādara, lai norādītu 747 00:45:02,500 --> 00:45:04,130 daži apstiprināšanas noteikumi, un tur ir daudz dažādu noteikumu 748 00:45:04,130 --> 00:45:06,810 ka Kohana dos jums par brīvu, kā jūs varat pievienot noteikumus, lai pateikt 749 00:45:06,810 --> 00:45:08,410 tai jābūt vismaz šo garumu. 750 00:45:08,410 --> 00:45:11,800 Varbūt tas ir jābūt ciparu. Varbūt tas ir jābūt alfa ciparu. 751 00:45:11,800 --> 00:45:14,410 Varbūt tas ir augstākais šo garumu, tā tālāk un tā tālāk. 752 00:45:14,410 --> 00:45:17,730 Ir daudz dažādu noteikumu, kas Kohana sniedz jums, 753 00:45:17,730 --> 00:45:19,610 un jūs varat doties uz viņu mājas lapā, apskatīt dokumentāciju, 754 00:45:19,610 --> 00:45:23,150 un jūs varat redzēt visu dažādas lietas, ko jūs varat darīt. 755 00:45:23,150 --> 00:45:25,650 >> Bet tas ir viss, kas man ir jādara, 756 00:45:25,650 --> 00:45:30,490 un tagad pieņemsim redzēt, kas notiek 757 00:45:30,490 --> 00:45:34,060 ja es iesniegt tukšu amatu. 758 00:45:34,060 --> 00:45:36,960 Kas notiks? Ak, nē, man kļūda. 759 00:45:36,960 --> 00:45:39,440 Man validācijas izņēmums. 760 00:45:39,440 --> 00:45:41,070 Nu, tas ir labi. 761 00:45:41,070 --> 00:45:43,200 Tā man teica, ka mans modelis ir nederīgs, 762 00:45:43,200 --> 00:45:45,780 bet es nevēlos, lai parādītu izņēmums 763 00:45:45,780 --> 00:45:48,720 maniem lietotājiem, kad viņi mēģina sniegt kaut ko nederīgu, vai ne? 764 00:45:48,720 --> 00:45:51,560 Es vēlos, lai dotu viņiem kaut kādas draudzīgāku kļūdas ziņojuma veida 765 00:45:51,560 --> 00:45:53,610 kad kaut kas noiet greizi. 766 00:45:53,610 --> 00:46:01,830 Ko mēs gatavojamies darīt, ir, mēs spēsim 767 00:46:01,830 --> 00:46:04,490 wrap viss ir mēģināt nozvejas cilpu. 768 00:46:04,490 --> 00:46:06,750 Patiesībā, es domāju, ka tas ir arī kaut kas jums vēl nav iemācījušies 769 00:46:06,750 --> 00:46:10,820 in CS50, jo C, programmēšanas valoda C, 770 00:46:10,820 --> 00:46:14,000 nav izņēmumi, bet gandrīz katrs citā valodā 771 00:46:14,000 --> 00:46:16,700 ir izņēmumi, tik ļoti, ļoti īsi, 772 00:46:16,700 --> 00:46:19,430 Izņēmums ir kaut kas gabals kodu var 773 00:46:19,430 --> 00:46:21,430 mest izņēmums, ja kaut kas noiet greizi, 774 00:46:21,430 --> 00:46:23,410 bet tad varbūt kāds cits gabals koda augstāk 775 00:46:23,410 --> 00:46:25,810 var noķert šo izņēmumu, un kaut ko darīt ar to. 776 00:46:25,810 --> 00:46:27,710 >> Piemēram, šajā gadījumā 777 00:46:27,710 --> 00:46:29,940 gabals kodu, kas mēģina glābt modeli, 778 00:46:29,940 --> 00:46:33,170 tas apstiprina modeli, un, ja tā saka: "Labi, šis modelis ir nederīgs," 779 00:46:33,170 --> 00:46:36,150 tas notiek, lai mest izņēmums, un tas ir sava veida līdzvērtīgs 780 00:46:36,150 --> 00:46:39,870 C jūs varētu atgriezties -1 vai kaut kas tamlīdzīgs. 781 00:46:39,870 --> 00:46:42,320 Un tad man, šī funkcija, mans kods 782 00:46:42,320 --> 00:46:46,310 augstākā līmenī, es varētu mēģināt noķert šo izņēmumu 783 00:46:46,310 --> 00:46:49,330 un būtībā saka: "Labi, ja es nozvejas izņēmums, ko es esmu gatavojas darīt?" 784 00:46:49,330 --> 00:46:51,570 Vai es varētu izvēlēties, lai nozvejas šo izņēmumu un ļaut kādam augstāk 785 00:46:51,570 --> 00:46:54,400 nozvejas izņēmums, vai arī tad, ja neviens nozvejas to, 786 00:46:54,400 --> 00:46:56,820 tad visa programma avārijās un saka: 787 00:46:56,820 --> 00:46:59,170 "Kaut kas nogāja greizi, un es nevarēju rīkoties ar to." 788 00:46:59,170 --> 00:47:04,490 >> Bet ko mēs darām, ir jūs wrap gabals kodu izmēģināt blokā, 789 00:47:04,490 --> 00:47:09,030 un tad jūs arī pievienot kaut ko sauc catch bloks, 790 00:47:09,030 --> 00:47:17,300 kas ir sava veida kods, kas mēģinātu panākt izņēmumus, kas var rasties. 791 00:47:17,300 --> 00:47:20,430 Un tāpēc, ja es nozvejas šo konkrēto izņēmumu 792 00:47:20,430 --> 00:47:23,110 vai atzīšanu par spēkā neesošu izņēmums, tad tas, ko es esmu gatavojas darīt, ir 793 00:47:23,110 --> 00:47:31,210 Es esmu gatavojas noteikt kļūdas - Es domāju, ka tas, kā es varu to darīt - 794 00:47:31,210 --> 00:47:35,370 un es esmu gatavojas noteikt kļūdas ar kādu objektu. 795 00:47:35,370 --> 00:47:40,920 Un tad ko es esmu gatavojas darīt, ir, ja tas hits šo izņēmumu, 796 00:47:40,920 --> 00:47:43,090 tas nav gatavojas novirzīt, un, ja tas nav novirzīt, 797 00:47:43,090 --> 00:47:46,160 tas nāks ārā no, ja blogā 798 00:47:46,160 --> 00:47:49,920 un hit šo emuāru / new, kas vēlas, es gribu darīt. 799 00:47:49,920 --> 00:47:53,190 Ja ir kļūda, tad es gribu, lai dotos atpakaļ uz formu 800 00:47:53,190 --> 00:47:55,100 un parādītu šīs kļūdas. 801 00:47:55,100 --> 00:48:00,780 Tagad tas, ko es gribu darīt, ir es gribu iet uz šo kļūdu 802 00:48:00,780 --> 00:48:07,010 uz skatu. 803 00:48:07,010 --> 00:48:10,360 Labi, es domāju, ka man ir skatu tieši šeit, 804 00:48:10,360 --> 00:48:14,660 un būtībā es gribu parādīt šīs kļūdas, ja tādi ir. 805 00:48:14,660 --> 00:48:19,740 Pirms es rakstīt HTML uz to, ka es esmu gatavojas tiešām ātri 806 00:48:19,740 --> 00:48:21,720 parādīs, ko struktūra šīs kļūdas mainīga izskatās, 807 00:48:21,720 --> 00:48:23,080 un tas ir laba prakse kopumā. 808 00:48:23,080 --> 00:48:25,070 Daudz reižu jums kaut ko atpakaļ no kāda metode, 809 00:48:25,070 --> 00:48:27,250 dažas funkcijas web ietvaros, 810 00:48:27,250 --> 00:48:29,410 un jūs nezināt, ko mainīgais izskatās, 811 00:48:29,410 --> 00:48:31,210 tāpēc jums nav jāzina, kā strādāt ar to. 812 00:48:31,210 --> 00:48:37,790 Es esmu gatavojas izmantot drukas r metodi, lai būtībā to izdrukāt. 813 00:48:37,790 --> 00:48:41,100 >> Un, kā jūs varat redzēt, tas man saka, tas ir asociētā masīvs, 814 00:48:41,100 --> 00:48:44,880 un jums ir būtiska, autors norāda uz šīs virknes, 815 00:48:44,880 --> 00:48:47,050 autors nedrīkst būt tukša, un vēl viens būtisks, ķermenis, 816 00:48:47,050 --> 00:48:49,680 norāda uz citu stīgu, struktūra nedrīkst būt tukša. 817 00:48:49,680 --> 00:48:52,130 Es, piemēram, labi, atdzesē. 818 00:48:52,130 --> 00:48:56,230 Tad es varu atkārtot, izmantojot masīvu un izdrukāt katru ziņu. 819 00:48:56,230 --> 00:49:02,150 Tas ir būtībā tāpat kā asociatīvo masīvu ar ķekars ziņojumus. 820 00:49:02,150 --> 00:49:13,500 Ko es esmu gatavojas darīt, ir "ja kļūdas," 821 00:49:13,500 --> 00:49:17,140 un es esmu gatavojas izveidot Nenumurēts saraksts, 822 00:49:17,140 --> 00:49:20,860 un es esmu gatavojas atkārtot, izmantojot visas kļūdas. 823 00:49:33,730 --> 00:49:38,710 Un tas, un tagad es esmu gatavojas izmēģināt iesniegt vēlreiz, 824 00:49:38,710 --> 00:49:41,200 un redzēsim, ko mēs saņemam. 825 00:49:41,200 --> 00:49:45,370 Tagad mēs šo jauku sarakstu ar kļūdām, 826 00:49:45,370 --> 00:49:48,630 un tas joprojām ir diezgan neglīts, bet tas, protams, var formatēt, lai izskatās jauki, 827 00:49:48,630 --> 00:49:51,620 bet pamatideja ir tikai dažas rindiņas kodu, 828 00:49:51,620 --> 00:49:53,720 mums izdevās apstiprina mūsu modeli, 829 00:49:53,720 --> 00:49:56,510 pārliecinieties, ka nebija tukši daži lauki, 830 00:49:56,510 --> 00:49:59,740 un, ja kaut kas nogāja greizi, tad atpakaļ kaut kādas kļūdas ziņojuma veida 831 00:49:59,740 --> 00:50:01,760 Tad es varētu iesniegt atpakaļ uz lietotāja. 832 00:50:01,760 --> 00:50:03,910 Varat arī pielāgot savu apstiprināšanu 833 00:50:03,910 --> 00:50:07,590 tā, ka jūs faktiski var būt kļūdas ziņojumu 834 00:50:07,590 --> 00:50:09,620 , kas ir vairāk raksturīgi jūsu pieteikumu vai kaut kas tamlīdzīgs. 835 00:50:09,620 --> 00:50:14,600 Viss, kas parasti ir pielāgojama. 836 00:50:14,600 --> 00:50:17,150 >> Diemžēl, mēs esam pietrūkt laika, 837 00:50:17,150 --> 00:50:20,040 tāpēc es esmu nāksies nogriezt dzīvot kodēšanas sesiju šeit. 838 00:50:20,040 --> 00:50:22,980 Ir ķekars citas funkcijas, ko es vēlos parādīt jums 839 00:50:22,980 --> 00:50:25,650 Šajā piemērā. 840 00:50:25,650 --> 00:50:27,620 Piemēram, jūs varat pievienot veidnes, lai jūsu vietnē, 841 00:50:27,620 --> 00:50:31,110 tāpēc varbūt ir dažas HTML kods veida, ka jūs vēlaties, lai piemērotu 842 00:50:31,110 --> 00:50:35,190 uz katru lapu jūsu vietnē, un tā vietā, aplīmēšana, ka 843 00:50:35,190 --> 00:50:40,630 ikvienā skats failu jums ir, kas acīmredzami būtu slikta prakse, 844 00:50:40,630 --> 00:50:43,020 Jūs varat būtībā noteikt šīs veidnes, 845 00:50:43,020 --> 00:50:46,660 un tad jūsu kontrolieris saka: "Labi, es esmu, izmantojot šo veidni." 846 00:50:46,660 --> 00:50:50,130 "Vai visi mani uzskati izmantot šo veidni." 847 00:50:50,130 --> 00:50:52,470 Un viena pēdējā lieta, ko es vēlos parādīt jums, kā arī 848 00:50:52,470 --> 00:50:57,800 ka mums nav laika, ir cross-site skriptu, 849 00:50:57,800 --> 00:51:01,430 un būtībā es domāju, ka jūs guys ir iespējams redzēt CS50 - 850 00:51:01,430 --> 00:51:03,770 Es domāju, ka Deivids Malan iespējams, runāja par to, kā jūs parasti var injicēt 851 00:51:03,770 --> 00:51:08,040 JavaScript kodu uz - jūs esat runājuši par šo? 852 00:51:08,040 --> 00:51:10,220 Varbūt? Varbūt ne? 853 00:51:10,220 --> 00:51:12,670 >> Bet daudz reizes jūs varat injicēt ļaunprātīgu JavaScript kodu 854 00:51:12,670 --> 00:51:15,630 uz kāda datu bāzē, un, ja tie nav aizbēgt, ka pareizi, 855 00:51:15,630 --> 00:51:18,280 Pēc tam, kad tie sniedz šo informāciju atpakaļ uz lietotāja, 856 00:51:18,280 --> 00:51:21,310 tad tas var palaist dažas no izlases JavaScript kodu veida jūs nevēlaties, lai notiktu, 857 00:51:21,310 --> 00:51:23,050 un es biju gatavojas, lai parādītu, kā jūs darīt laikā Kohana. 858 00:51:23,050 --> 00:51:25,380 Tas ir tiešām ļoti, ļoti viegli. 859 00:51:25,380 --> 00:51:31,920 Es varētu darīt to tieši tagad, pēc 2 sekundēm burtiski. 860 00:51:31,920 --> 00:51:34,560 Viss, kas Jums jādara, ir būtībā wrap šīs lietas 861 00:51:34,560 --> 00:51:46,920 šajā lieta, ko sauc par HTML vienībām. 862 00:51:46,920 --> 00:51:51,180 Un tas automātiski izvairīties visus burtus pareizi 863 00:51:51,180 --> 00:51:54,730 un pārliecinieties, ka Jums nav iegūt šo problēmu. 864 00:51:54,730 --> 00:51:57,220 [Student] Jūs nepareizi uzrakstīti pirmo testu. 865 00:51:57,220 --> 00:52:01,030 [Brandon Liu] Ak, hmm. 866 00:52:01,030 --> 00:52:06,420 >> Labi, ka viss man bija dalīties ar jums šodien. 867 00:52:06,420 --> 00:52:09,930 Šie slaidi gatavojas publicēta, taču tie parasti 868 00:52:09,930 --> 00:52:13,900 vienīgie resursi jums tiešām ir nepieciešams, lai sāktu ar Kohana. 869 00:52:13,900 --> 00:52:16,770 Jūs varat iet uz mājas lapā. Viņi ir lietotāja rokasgrāmata, un tie ir arī API pētnieks. 870 00:52:16,770 --> 00:52:20,630 Mēs varam izpētīt visas dažādās funkcijas un palīgs funkcijas tie ir par jums. 871 00:52:20,630 --> 00:52:22,070 Tās parasti ir pietiekami daudz informācijas par mājas lapā 872 00:52:22,070 --> 00:52:25,310 ka jūs varat izmantot, lai sāktu un iegūt notiek ar Kohana. 873 00:52:25,310 --> 00:52:30,840 Tur nav nemaz tik daudz konsultācijas, es domāju, par Kohana, ārpus 874 00:52:30,840 --> 00:52:33,880 ko viņi ir mājas lapā šeit, tāpēc tas ir iespējams, jūsu labākais. 875 00:52:33,880 --> 00:52:35,600 Bet, ja jūs vēlaties, lai iet ar web sistēmu 876 00:52:35,600 --> 00:52:37,120 un jūs nevēlaties, lai būtu uzņemt jaunu valodu, 877 00:52:37,120 --> 00:52:39,780 un jūs vēlaties kaut ko, kas ir salīdzinoši viegls un ir viegli mācīšanās līkne, 878 00:52:39,780 --> 00:52:41,570 Es noteikti ieteiktu Kohana. 879 00:52:41,570 --> 00:52:44,040 Tas ir iespējams, ir labākais piedāvājums par to. 880 00:52:44,040 --> 00:52:46,830 Smieklīgi, lai gan, ir, ja mēs, izmantojot Ruby on Rails, 881 00:52:46,830 --> 00:52:48,550 mēs varētu atkārtot to, ko mēs tikko izdarījām 882 00:52:48,550 --> 00:52:51,430 un, iespējams, vairāk zem 3 minūtēm. 883 00:52:51,430 --> 00:52:54,710 Nav joks, bet mācīties, Ruby on Rails notiek daudz ilgāk 884 00:52:54,710 --> 00:52:56,780 , nekā tas būtu nepieciešams, lai uzzinātu Kohana. 885 00:52:56,780 --> 00:52:58,840 Tā būtībā jūsu izvēle par to, ko jūs vēlaties, lai izvēlētos mācīties, 886 00:52:58,840 --> 00:53:01,260 bet, ja jūs vēlaties, lai piecelties un darbojas ātri, 887 00:53:01,260 --> 00:53:03,870 Kohana noteikti ir ļoti laba izvēle. 888 00:53:03,870 --> 00:53:06,730 >> Kādi pēdējie jautājumi, pirms mēs beigās? Jā. 889 00:53:06,730 --> 00:53:08,020 [Studentu] Kā mēs integrēt ka 890 00:53:08,020 --> 00:53:13,120 ar CSS ietvaros, piemēram, jūs izmantojat, kad jūs instruēt? 891 00:53:13,120 --> 00:53:16,700 Jautājums ir, kā tas mums integrēt, ka ar CSS sistēmu? 892 00:53:16,700 --> 00:53:18,740 Ko mēs, iespējams darīt, ir, mēs, iespējams, iekļaut 893 00:53:18,740 --> 00:53:21,090 jauna mape, kur mēs varētu dump visus mūsu CSS failus, 894 00:53:21,090 --> 00:53:23,010 un tad mēs gribētu arī pievienotu jaunu veidni. 895 00:53:23,010 --> 00:53:26,090 Veidnē mēs gribētu iekļaut šos CSS failus 896 00:53:26,090 --> 00:53:28,410 lai pārliecinātos, ka viņi ir atsauce uz katru lapu, 897 00:53:28,410 --> 00:53:32,220 un tad, kad jūs faktiski ir rakstiski HTML, 898 00:53:32,220 --> 00:53:34,010 Jūs vienkārši pievienot attiecīgus nodarbības un plauktiņš, 899 00:53:34,010 --> 00:53:36,100 un, piemēram, ja jūs izmantojat kaut ko līdzīgu formu 900 00:53:36,100 --> 00:53:40,710 palīgs funkciju, jūs varat pievienot vairāk parametrus tam 901 00:53:40,710 --> 00:53:42,830 norādīt, ko nodarbības vēlaties jāpievieno dažādām lietām 902 00:53:42,830 --> 00:53:47,820 lai viņi varētu stils to pareizi, un tas ir pamatā, kā jūs varētu iet. 903 00:53:47,820 --> 00:53:50,100 >> Kādi citi jautājumi? 904 00:53:50,100 --> 00:53:52,090 Awesome. 905 00:53:52,090 --> 00:53:58,540 Paldies par jūsu laiku, un paldies par ierašanos. 906 00:53:58,540 --> 00:54:05,170 Man nebija gatavojas pievienot ļoti daudz kas cits, 907 00:54:05,170 --> 00:54:08,560 bet 1 tiešām ātri lieta mums nav saite 908 00:54:08,560 --> 00:54:12,590 formu. 909 00:54:12,590 --> 00:54:14,310 Tiešām muļķīgi. 910 00:54:14,310 --> 00:54:20,110 Pieņemsim pievienot - faktiski uzskata, blog, indekss, 911 00:54:20,110 --> 00:54:23,890 pieņemsim ļoti ātri pievienot saiti, kas iet uz jauno lapu, 912 00:54:23,890 --> 00:54:26,770 lapa, kurā mēs varam ievietot jaunu post. 913 00:54:26,770 --> 00:54:29,950 Mēs ejam, lai to izdarītu. 914 00:54:29,950 --> 00:54:34,020 Kas ir jauki, ir, ka tas ir visa grupa HTML palīgs funkcijas 915 00:54:34,020 --> 00:54:37,090 kas darīt dažādas lietas, lai jūs, lai jūs jau redzējāt vienībām 916 00:54:37,090 --> 00:54:41,980 darboties šeit, bet tie ir arī funkciju sauc "enkurs" 917 00:54:41,980 --> 00:54:45,400 ko jūs varat ierakstīt blog / new 918 00:54:45,400 --> 00:54:49,550 un saka: "Post jaunu blog." 919 00:54:49,550 --> 00:54:51,850 Un tas radītu šo saiti jums, 920 00:54:51,850 --> 00:54:54,120 un tas, šķiet, tiešām niecīgs to darīt, bet tas ir jauki, 921 00:54:54,120 --> 00:54:58,720 tāpēc pieņemsim, ka jums ir pārvietot savu mājas lapā no 1 domēna uz citu. 922 00:54:58,720 --> 00:55:01,390 Un, ja jūs vienkārši izrakstīja URL, sevi, 923 00:55:01,390 --> 00:55:04,350 tad jums būtu mainīt visus URL. 924 00:55:04,350 --> 00:55:06,850 Vai varbūt jūs pārcelts no 1 apakšmapi uz citu apakšmapi. 925 00:55:06,850 --> 00:55:08,790 Jums būtu jāmaina visu, kas URL sevi, 926 00:55:08,790 --> 00:55:12,180 un tas nav jautri. 927 00:55:12,180 --> 00:55:14,510 Jūs varat izmantot šo enkuru tieši šeit, 928 00:55:14,510 --> 00:55:18,950 un jūs varat mainīt domēna vai apakšmapi prefiksu 929 00:55:18,950 --> 00:55:20,640 konfigurācijas failu, kad, 930 00:55:20,640 --> 00:55:22,980 un tad tas attieksies, ka visur, un tas ir, atkal, 931 00:55:22,980 --> 00:55:26,930 lielisks piemērs neatkārtot sevi, žāvēšana savu kodu out. 932 00:55:26,930 --> 00:55:30,370 Kur jūs atkārtot sevi, izmēģināt un iegūt kaut kādas konfigurācijas failu veida 933 00:55:30,370 --> 00:55:34,160 vai ar citu funkciju un ir tā, ka rokturis jums. 934 00:55:34,160 --> 00:55:42,930 >> Un ļoti pēdējā lieta, ko es gribēju, lai parādītu jums bija 935 00:55:42,930 --> 00:55:50,250 pieņemsim, ka mēs esam atpakaļ uz šo amatu, un es biju veido daži patiešām ilgi eseju, 936 00:55:50,250 --> 00:55:52,670 bet es aizmirsu, lai iekļautu savu autoru. 937 00:55:52,670 --> 00:55:55,210 Tagad, kad es noklikšķiniet uz "Iesniegt Post" 938 00:55:55,210 --> 00:55:57,270 Es tikko zaudējis visu. 939 00:55:57,270 --> 00:56:00,000 Nē! Tiešām skumji. 940 00:56:00,000 --> 00:56:03,870 Tātad, kā jūs galā ar šo? 941 00:56:03,870 --> 00:56:06,070 Tas ir tas, ko mēs darām. 942 00:56:06,070 --> 00:56:09,340 Ko mēs darām, ir šeit, lai šīm ievades un tekstu zonas funkcijas, 943 00:56:09,340 --> 00:56:12,700 ja ietver otru parametru, tad vērtību, kas otro parametru 944 00:56:12,700 --> 00:56:16,620 būs kāda joma būs sākotnēji apdzīvots ar. 945 00:56:16,620 --> 00:56:23,570 Ko mēs varētu darīt, ir mūsu blogā kontrolieris, 946 00:56:23,570 --> 00:56:25,360 mēs varētu saistīties citu mainīgo. 947 00:56:25,360 --> 00:56:27,050 To sauc par "vērtībām" varbūt. 948 00:56:27,050 --> 00:56:30,620 Un iet uz post masīvs, burtiski. 949 00:56:30,620 --> 00:56:32,620 Tas nozīmē, ka, ja validācija neizdevās, 950 00:56:32,620 --> 00:56:36,570 iet man post masīvu, ka es iesniegto no pēdējās pieprasījuma 951 00:56:36,570 --> 00:56:38,420 un tādā veidā es varu izmantot vērtības no savām pēdējām iesniegšanas 952 00:56:38,420 --> 00:56:44,540 repopulate laukus. 953 00:56:44,540 --> 00:56:49,600 Tagad es varu darīt kaut ko līdzīgu vērtību autora 954 00:56:49,600 --> 00:56:55,180 un vērtības ķermeni, un, ka jau tagad, ja man darīt daži izlases stuff 955 00:56:55,180 --> 00:57:01,490 un noklikšķiniet uz "Iesniegt Post", tad tā paliek tur. 956 00:57:01,490 --> 00:57:03,830 Bet mēs ejam uzskriet citu problēmu. 957 00:57:03,830 --> 00:57:07,670 Tas darbojas, bet, ja es eju uz lapu ļoti pirmo reizi, 958 00:57:07,670 --> 00:57:09,720 tas būs crash, un tas ir tāpēc, ka pirmo reizi 959 00:57:09,720 --> 00:57:13,730 mēs ejam uz lapu, šis amats mainīgais nav definēts vēl. 960 00:57:13,730 --> 00:57:18,170 Tas ir null. Tas neeksistē. 961 00:57:18,170 --> 00:57:21,630 >> Un ko mēs gribam pateikt, ir, ja šo taustiņu pastāv, 962 00:57:21,630 --> 00:57:27,750 tad atpakaļ vērtību šo masīva, 963 00:57:27,750 --> 00:57:30,450 bet, ja atslēgas nav, tad atpakaļ tukšu virkni. 964 00:57:30,450 --> 00:57:32,150 Tas ir funkcionalitāte, mēs vēlamies šeit. 965 00:57:32,150 --> 00:57:34,690 Mēs gribam, lai pārbaudītu, vai galvenais, pirms mēģināt piekļūt masīvs eksistē, 966 00:57:34,690 --> 00:57:36,580 un par laimi pietiekami, 967 00:57:36,580 --> 00:57:38,570 Kohana arī dod mums palīgs funkciju, kas. 968 00:57:38,570 --> 00:57:41,040 Viņi ir visu šo komplektu funkcijas 969 00:57:41,040 --> 00:57:43,660 ar nosaukumu ARR, īss, masīvs, 970 00:57:43,660 --> 00:57:45,800 un tie ir 1 funkciju sauc "get" 971 00:57:45,800 --> 00:57:48,690 un jūs varat iet masīvā, 972 00:57:48,690 --> 00:57:50,740 un jūs varat iet ar nosaukumu atslēgu. 973 00:57:50,740 --> 00:57:54,330 Tad būtībā to, ko tā darīs, tas centīsies iegūt šo taustiņu, 974 00:57:54,330 --> 00:57:56,470 bet, ja galvenais neeksistē masīvā, 975 00:57:56,470 --> 00:58:00,900 tad tas atgriezīsies tukšs, vai arī mēs varam arī norādīt noklusējuma, es uzskatu, 976 00:58:00,900 --> 00:58:03,500 kas ir jauki. 977 00:58:09,740 --> 00:58:13,150 Tagad, ja mēs to pašu vēlreiz, 978 00:58:13,150 --> 00:58:15,970 tad jūs tagad redzēt tas darbojas pirmo reizi apkārt, 979 00:58:15,970 --> 00:58:18,080 un atkal, ja mēs tipa kaut izlases sīkumi 980 00:58:18,080 --> 00:58:23,210 un mēģināt iesniegt, tad tā paliek tur. 981 00:58:23,210 --> 00:58:31,640 >> Un es domāju, es varētu arī parādīs, kā, lai pievienotu veidni tiešām ātri. 982 00:58:31,640 --> 00:58:36,140 Ko mēs varam darīt, vispirms ir, mēs varam pievienot jaunu skatu sauc par "template.php" 983 00:58:36,140 --> 00:58:38,890 ietvaros mapē Skati 984 00:58:38,890 --> 00:58:44,730 un ko es esmu gatavojas darīt, ir es esmu gatavojas izdrukāt kaut ko sauc par "satura" 985 00:58:44,730 --> 00:58:49,130 kas būs mans galvenais saturs. 986 00:58:49,130 --> 00:58:51,380 Un varbūt ir ļoti apakšējā es esmu gatavojas pievienot, teiksim, 987 00:58:51,380 --> 00:58:53,340 autortiesības. 988 00:58:53,340 --> 00:58:56,150 [Dzirdams students jautājums] 989 00:58:56,150 --> 00:58:58,050 [Brandon Liu] Varbūt tas ir super pamata veidni, es vēlos izmantot. 990 00:58:58,050 --> 00:59:02,840 Es gribu, lai ir mape ar manu autortiesības uz katru lapu, 991 00:59:02,840 --> 00:59:05,560 un tagad to, ko es esmu gatavojas darīt manā kontrolieris 992 00:59:05,560 --> 00:59:07,740 Tagad tā vietā, lai sakot, "paplašina Controller" 993 00:59:07,740 --> 00:59:11,870 Es esmu gatavojas teikt, "paplašina Controller_Template," 994 00:59:11,870 --> 00:59:15,890 un tagad tā vietā, lai sakot, "atbilde ķermenis ir vienāds ar šo viedokli," 995 00:59:15,890 --> 00:59:24,110 Es esmu gatavojas teikt: "Šī veidne saturs ir -" 996 00:59:24,110 --> 00:59:27,690 un es domāju - man likt vienādības zīmi? 997 00:59:27,690 --> 00:59:32,710 Es aizmirstu. Jā, es domāju tā. 998 00:59:32,710 --> 00:59:37,710 Un tagad es noteikti, ka saturs mainīgo vienāds skatu. 999 00:59:37,710 --> 00:59:40,960 Es varu darīt to pašu šeit. 1000 00:59:49,620 --> 00:59:57,170 Un tagad, ja es atsvaidzināt, jūs varat redzēt, tagad šī autortiesības pievieno tur, 1001 00:59:57,170 --> 01:00:00,350 un tikai veikt dažas izlases pastu, 1002 01:00:00,350 --> 01:00:06,760 un tad atkal, jums vajadzētu redzēt, ka autortiesības ir pašā lapas apakšā. 1003 01:00:06,760 --> 01:00:10,730 >> Great. Tas ir viss, ko es gribēju parādīt jums puiši. 1004 01:00:10,730 --> 01:00:14,970 [Aplausi] 1005 01:00:14,970 --> 01:00:18,950 Kādi jautājumi? 1006 01:00:18,950 --> 01:00:21,000 [CS50.TV]