>> Ou ta ka sonje soti nan dènye fwa ke nou te gade
nan nivo sa a egzanp final la nan mv,
yon kontwolè modèl View achitekti,
epi li bèl anpil dlo bouyi
desann nan òganize bagay sa yo yon ti kras plis propreman
nan repèrtwar.
Men, si m 'fè pye bwa, ki se jis yon lòd
ki montre m 'sistèm lan dosye tankou sa a, nou te gen yon bèl
e byen òdone modèl anyè, yon anyè piblik, ak pou fè.
Apre sa, lide la an jeneral te sèlman mete
nan anyè a piblik dosye yo ke reyèlman bezwen
yo dwe piblik, ak tout bagay lòt moun yo ta dwe joliman òganize.
Men, efektivman, andedan nan sa a anyè piblik nou te gen tout
pakèt tout contrôleur, contrôleur moun
ke yon jan kanmenm nesesè oswa enkli lòt dosye.
Men, nou vrèman pa t 'jwenn anpil plis fonctionnalités pase sa,
, epi, nan reyalite, nou kalite te gen nan aplike sa a nosyon nan opinyon,
oswa modèl, tèt nou, ak fonksyon ekstrè
ak yon rann fonksyon ki nou aplike tèt nou.
Apre sa, kòm li se nou kòmanse ap fè sa a, nou pral kòmanse reyalize -
nou pral kòmanse konstwi yon vle lis, tankou, oh, Wow,
Mwen swete mwen te gen yon bibliyotèk pou voye Imèl.
Mwen swete mwen te gen yon bibliyotèk pou kreye yon baz done.
Mwen swete mwen gen bibliyotèk pou dot dot dot.
Ak Se poutèt sa sa yo bibliyotèk egziste.
Sa a se poukisa moun ki sèvi ak Django ak Piton,
paske li jis ba ou plis.
Li nan pou ki sa moun sèvi ak Ray ak Ruby
paske li jis ba ou plis.
Se poutèt sa nou pral sèvi ak Laravel paske sou tèt PHP,
li jis ba ou plis.
Apre sa, jis yo moutre nou, lè sa a, pou yon moman, mwen pral ale
nan yon anyè v-lame
nan yon ekzanp aplikasyon lè l sèvi avèk Laravel.
Nan premye gade, franchman, li nan pwobableman yon ti jan mal
paske gen anpil dosye, se konsa anpil repèrtwar,
men bagay la enpòtan, ak kòm nou pral wè apre yon ti repo rapid,
se yo konsantre sèlman sou bagay ki pi konvnabl
a ap resevwa kèk travay ou fè okòmansman, e ke sa k ap pase
yo dwe nan anyè a Apt.
Kòm ou pral wè ak tande, gen yo toujou yon pakèt moun sou dosye,
Men, yo menm ki sou ale nan pran swen sou sa, sitou, se sa a.
Si m 'louvri moute wout sispann PHP, avi kòm yon kol,
ki jan aplikasyon sa a se sou nan travay.
Sa a se yon reimplementation nan Laravel
nan super senp la aplikasyon kou estipid
ki te ban m 'semèn zewo, semèn yon sèl, konferans, ak pdf yo.
Mwen tou senpleman ale nan presize - ekran mwen an se yon ti kras koupe,
ankò - Mwen pral presize sa ki annapre yo,
ke mwen vle defini yon wout lè l sèvi avèk HTTP resevwa pou koupe,
ak chak fwa yon itilizatè pou sa a vizit aplikasyon koupe
sou sit entènèt mwen an, mwen vle egzekite moso nan anonim nan kòd,
sètadi retounen wè kolon fè.
Se konsa, sa vle di, rele yon estatik metòd andedan
nan yon klas yo rele vi, epi fè rann yon modèl
yo rele endèks, epi li pase nan yon pakèt
ki gen valè kle pè, nan ka sa a, tit.
Pandan se tan, si itilizatè a vizit koupe konferans,
Kòd sa a ta dwe egzekite,
ak modèl la konferans dwe pran founi.
Finalman, si vizit yo itilizatè konferans koupe yon bagay,
kote gen yon bagay ki, pou chak anba a isit la, yon nonb,
youn oswa plis chif desimal,
Lè sa a, mwen vle rann konferans yo modèl,
pase nan tit la tou.
Se konsa, rezilta nan fen se ke -
si mwen aktyèlman rale moute sa a aplikasyon nan navigatè m 'yo,
fen rezilta a - whoops.
Rezilta nan fen se ekzakteman menm bagay la,
kwake ak yon ti kras sexier URL kounye a.
Koulye a, li se yon koupe konferans 0 olye pou yo semèn zewo dot PHP.
Men,, se pou yo pran yon poz isit la.
Ann pran yon minit de kraze, ak lè nou 'tounen an,
Tim ki pral vini sou leve, li prezante nou
fonksyonman yo enteryè nan Laravel ak kalite a
nan fonksyonalite nou se sou jwenn soti nan bwat la.
>> Tout dwa, se konsa, kounye a nou ap yo pral pran yon plonje pi fon
nan fondasyon an Laravel PHP, sa David mansyone.
Se konsa, Laravel, plas an premye nou pral kòmanse ki pral
nan kòmansman rapid
ak enstale li via yon bagay yo rele konpozitè.
Se konsa, konpoziteur se yon sistèm jesyon pake
pou PHP menm jan ak Meservey pou Ruby oswa twou san fon
pou Piton oswa MPM pou Pa gen JS.
Konpozitè ede nan jere tout Dependencies yo diferan
ki Laravel depann sou lè - Sòt de, anba kapo a.
Li itilize yon anpil nan senfoni an,
yon lòt kad PHP a fonksyonman enteryè.
Epi, konsa, nou pral yo sèvi ak Command la
yo ke yo ban nou isit la, konpoziteur kreye pwojè Laravel Laravel,
apre nou te enstale sèvis piblik la konpoziteur,
nan Tanp kote mwen te deja fè sou - a kite a wè.
Se konsa, mwen lè l sèvi avèk CS 50 aparèy la
paske sa a gen tout nan Vèsyon PHP ak SQL mwen
ak tout bagay ke nou bezwen jwenn te kòmanse kouri.
Se konsa, mwen pral ale pi devan epi rale moute tèminal la isit la
ak vole nan v-lame a anyè, ak mwen pral
keratin sa a - oh, mwen pa kapab fè li ki fason.
Se konsa, mwen pral SSH egzanp lan Linux
ke mwen kouri nan VMWare la.
Apre sa, mwen pral kouri sa a Konpozitè kreye pwojè Laravel,
ak Mwen pral chanje non pwojè ou
jis dot egzanp dev.
Apre sa, dèyè sèn nan,
sa a pran yon ti tan premye fwa nan w ap ale
fè li, men li se enstale tout Dependencies yo
ke w ap ale nan bezwen kouri Laravel.
Se konsa, èspere ke sa a fè pa pran twò lontan.
Li ta dwe jis pran yon dezyèm fwa.
Premye fwa nan ke ou fè li, li pral pran yon kèk minit,
pwobableman, paske li bezwen jwenn tout bagay.
Mwen te li tout kach isit la.
Se konsa, kounye a ke nou gen egzanp dot dev, ki sa nou ap ale nan bezwen
pou fè pou kapab jwenn aksè nan sa a
nan navigatè Chrome nou an, se ale pi devan epi so an nan -
nou pral pseudo atravè tout pouvwa a dosye a Etsy.
Apre sa, nou pral ale pi devan epi ajoute yon liy nouvo isit la ak IP la
nan 50 aparèy la, ki se montre la a
nan kwen an men dwat-ou anba nan ekran an, 192 168 a -
ak sa a ka diferan depann sou machin ou,
Se konsa, 192 168 69 128 [odyo kraze] egzanp pwojè dot dev.
Oke. Delivre sa.
Se konsa, koulye a, si nou ale nan egzanp dot dev, nou wè la - se pou yo wè.
Oh, mwen te nan mal nan anyè, se konsa kite m 'ale pi devan
yo epi li deplase dev a egzanp dot nan anyè a v-lame.
Epi, koulye a si nou rafrechi li, nou wè ke li di entèdi.
Ou pa gen aksè.
Se konsa, nou bezwen ale nan la anyè egzanp dot dev
nan V-lame, epi nou bezwen chmod li nan 0711, dev a egzanp dot,
kòm byen ke piblik la - oh, Mwen te fè sa ki mal tou de fwa.
Se konsa, dev a egzanp dot, menm jan byen ke anyè a piblik
se sa ki anba li, se konsa ke li se kapab
pou li ale nan PHP nan endèks dot.
Epi, koulye a, si nou rafrechi - oh, nou ap toujou gen pwoblèm.
Se konsa, andedan egzanp lan anyè piblik,
si nou fè lis tout dosye yo, ki gen ladan yo menm ki kache,
gen nan yon dosye aksè HD, ak sa a se itilize pa Apache
ede detèmine, pou sa a anyè espesifik,
kote demann yo ta dwe pèdi batay la.
Se konsa, sa a tou bezwen yo dwe chmoded 0644, epi kounye a ou te rive.
Se konsa, sa ki te rapid nan enstale nan Laravel atravè Command la.
Se konsa, kite a ale vè lavan, ak mwen pral yo sèvi ak yon bagay yo rele Samba.
Si w ap pa abitye ak li, ou kapab - soti nan meni an Moun,
ale nan ale yo epi konekte nan sèvè, epi ou ka ale pi devan
epi fè SMB kolon koupe koupe ak adrès la IP
nan egzanp lan Linux ke nou ap kouri nan VMWare ak ale vè lavan
yo epi konekte nan sèvè a pou ke ou ka mòn li
kòm sistèm dosye epi sèvi ak li
kòm si ou te lokalman ki konekte nan li.
Se konsa, mwen pral ale pi devan epi rale sa a
nan yon editè rele Sublime tèks.
Si w ap abitye, li se yon editè reyèlman bon
ki disponib yo edit dosye kòd.
Se konsa, nou pral pran yon gade
nan anyè a estrikti pou pwojè a.
Se konsa, gen nan yon diferan kèk dosye nan nivo nan tèt.
Genyen app, ki David te mansyone deja.
Genyen demaraj yo, ki se kèk dosye itilize intern
pa Laravel demaraj tout la Dependencies, chaje yo tout nan,
asire w ke tout majik la metòd yo rele byen
pou kapab [odyo repo].
Gen piblik la anyè, ki se kote tout
nan byen piblik-ap fè fas nou an, tankou PHP nan endèks dot
kote demann yo bat, imaj, dosye CSS, JavaScript,
nenpòt ki bagay ki bezwen dwe dirèkteman aksesib
pa mond lan ap viv nan anyè a piblik la.
Lè sa a, anyè a machann yo tout nan byen yo -
oswa tout [repo a odyo] anba kapo a ki fè yon anpil
nan leve a lou ki Laravel depann sou.
Se konsa, anjeneral, nan yon piblik anyè, sa a se sòt
nan sa ou ta wè, CSS la, JavaScript,
sa yo dosye yo pa gen lè ou enstale fondasyon an,
men sa yo se bagay ki ou ap gen chans pou vle ajoute
kòm w ap bati soti aplikasyon w yo.
Dosye a aksè HD ke mwen mansyone ak PHP nan endèks dot,
ki se devan an kontwolè pou - an
kote tout demann yo ale nan okòmansman.
Se konsa, andedan aplikasyon an katab, sa yo se -
gen nan aktyèlman yon koup -
gen aktyèlman yon kèk dosye diferan isit la.
Genyen yon anpil nan yo, ak jan David mansyone,
li kapab akablan an premye, men ou jis vle yo konsantre
sou sa yo espesyalman.
Se konsa, gen wout yo dot PHP, ki se ki sa nou te wè pi bonè
yo fè montre ke ou kapab wout yon espesifik URL ak p metòd
nan yon sèten swa anonim fonksyon, tankou David te lè l sèvi avèk,
oswa yon Kontwolè, ki nou ap sou yo ale sou.
Genyen dosye a config,
ki se kote nou pral mete nenpòt ki aplikasyon konfigirasyon
ke ou bezwen, tankou anviwònman baz done oswa nenpòt APIs
ke ou ka fè fas ak.
Si w ap lè l sèvi avèk yon bagay yo voye lapòs
oswa si w ap konekte Amazon nan magazen imaj,
ou ta mete tout nan sa yo konfigirasyon
nan yon pwen santral nan la aplikasyon pou ke -
sòt de konvansyon ki tout moun, menm jan yo ap travay
nan yon ekip, ou pa bezwen panse osijè de ki kote se sa a.
Se jis nan ou gen yon mete plas kote li ale.
Sa ta dwe nan config.
Contrôleur yo nan mete nan aplikasyon an
ki kote ou tipikman wout demann.
Se konsa, kontwolè a manch yon anpil nan lojik aplikasyon an
ak sòt de chwazi sa ki nan ekspozisyon nan ekran an ki pral
yo dwe, yo opinyon yo, ak Lè sa a, tou kokiy
soti nan modèl yo diferan ki gen ladan done yo
epi yo pase sa yo ki vin gen opinyon la.
Se konsa, ou sòt de - kontwolè a se sòt de dispatchè a
pou demann yo, ou konnen, ki sa w ap pral fè
ak done a - oswa avèk - depann sou demann lan se,
sa done yo ta dwe montre ak ki kote nou jwenn li nan.
Ak opinyon yo se tipikman jis HTML,
petèt lè l sèvi avèk yon gabari motè, menm jan nou ap ale nan ale
sou ak gabari nan lam motè ki Laravel bato avèk yo.
Lè sa a, lòt repèrtwar yo pou kounye a, nou ap jis ale
sòt de enteprete sou epi yo pa enkyete sou.
Men, moun enkli tès, se konsa tès-gratis aplikasyon pou inite,
filtè, depo.
Mwen kenbe fè sa.
Tout dwa, sote tounen sou isit la.
Se konsa, premye bagay la ke li vini ak se wout sa a jwenn
epi li wè fè hello.
Se konsa, si nou gade nan anyè a opinyon,
nou wè ke gen se yon PHP alo dot,
e ke sa a kote sa a ou yo te rive ap vini soti nan.
Men, nou kapab tou chanje sa a -
konsa, nou kapab chanje sa a nan hello, e kounye a,, si nou eseye ale
nan yon wout ki pa defini nou jwenn sa a sòt de plato chemine
tankou sa ki ale mal ak aplikasyon an.
Men, si n 'al jwenn koupe hello,
gen aktyèlman yon entèn sèvè erè.
Se konsa, gen yon ti kras nan majik ale sou dèyè sèn nan
nan CS 50 aparèy la nan asire w ke ou ap kapab
nan non tout bagay sa yo repèrtwar fasilman.
Non a nan - a pou la egzanp dot dev ke nou te bay.
Se konsa, nou aktyèlman gen chanje yon sèl bagay plis
nan dosye a aksè HD.
Se konsa, nou ap ale nan ale pi devan
epi ajoute liy sa a, reyekri koupe baz.
Epi ki fondamantalman se yon lòt direktiv.
David, ou ka pale plis sa ki baz la reyekri fè.
>> Li esansyèlman korije plis sa ki sèvè a panse.
Li sipoze [Fèbl] vityèl lame.
Se konsa, ki espesifye ki inyore ke pa reyekri adrès koupe baz.
>> Dwa. Se konsa, koulye a, koupe alo travay byen.
Se konsa, kite a so tounen sou isit la.
Se konsa, ansanm ak jis ap fè yon fonksyon anonim tankou sa a,
gen - se konsa sa a se jis yon Rekapitilasyon
nan mv a mwen te jis diskite.
Li ale nan wout yo ak Lè sa a, kokiy soti contrôleur yo,
ki kontra avèk la modèl ak opinyon ak ki jan tout
ki ta dwe te fè fas ak.
Se konsa, contrôleur yo se sòt de - ede santralize nan tout sa,
epi ou ka gen aksè yo atravè wout lè li di wout jwenn.
Se konsa, nou te kapab di wout jwenn hello,
ak Lè sa a, kontwolè a non nan ak yon non metòd.
Se konsa, kite a ale pi devan epi bay ki yon piki.
Se konsa, nou pral di wout jwenn koupe hello,
epi n ap fè yon bonjou kontwolè nan montre hello.
Se konsa, nan lòd pou sa a nan travay,
nou bezwen ajoute yon dosye rele alo kontwolè dot PHP.
Mwen pral ale pi devan epi - se konsa li voye yon gwo kontwolè baz,
ki Laravel deja bato ak yo,
ki fin yon kontwolè, ki se sòt de anba kapo a
ak fè yon anpil nan la bagay dèyè sèn nan
ki ede contrôleur nan jere tout eta sa a
ki ap vini nan aplikasyon an.
Se konsa, kontwolè a lakay ou, nou te di li ta yo te rele montre hello.
Epitou, n ap jis - olye nan retounen yon vi,
nou pral jis retounen mond hello.
Oh, bonjou - o, mwen kopye li.
Bonjou kontwolè.
Se konsa, alo nan lemonn.
Se konsa, ki se jis yon reyèlman, vrèman senp egzanp
sou kouman ou kapab kreye contrôleur.