>> Maaari mong isipin ang mula sa huling oras na kami ay tumingin
sa ito panghuling halimbawa ng MVC,
isang view ng modelo ng controller architecture,
at ito halos pinakuluang
pababa sa pag-aayos ng mga bagay ang kaunti pa nang malinis
sa mga direktoryo.
At kung gagawin ko tree, na kung saan ay isang utos lamang
na nagpapakita sa akin sa file system tulad nito, nagkaroon kami ng magandang
at mapag-ayos ng mga template direktoryo, isang pampublikong direktoryo, at iba pa.
At ang pangkalahatang ideya ay lamang ilagay
sa pampublikong direktoryo ang mga file na talagang kailangan
maging pampubliko, at lahat ng bagay tao ay dapat na inorganisa ng mabuti.
Ngunit epektibo, sa loob ng ito pampublikong direktoryo namin ay may lahat
ang maramihang mga controllers, indibidwal na controllers
na kahit papaano ay kinakailangan o kasama iba pang mga file.
Ngunit kami talaga ay hindi makakuha ng magkano higit pang mga pag-andar kaysa doon,
at, sa katunayan, uri ng namin ay may sa ipatupad ang paniwala ng mga view,
o template, ating sarili, may katas ng function
at isang render ng function na ipinatupad namin ang ating mga sarili.
At dahil ito ay simulan naming ginagawa ito, magsisimula kami upang mapagtanto -
magsisimula kami upang bumuo up ng isang nais listahan, tulad ng, oh, a,
Nais kong nagkaroon ako ng library para sa pagpapadala ng mga email.
Nais kong nagkaroon ako ng library para sa paglikha ng isang database.
Hinihiling kong mayroon akong library para tuldok tuldok tuldok.
At iyon ang dahilan kung bakit ang mga aklatan umiiral.
Ito ang dahilan kung bakit ginagamit ng mga tao Django sa Python,
dahil nagbibigay sa iyo ito lamang ang nalalaman.
Ito ang dahilan kung bakit ginagamit ng mga tao Daang-bakal na may Ruby
dahil nagbibigay sa iyo ito lamang ang nalalaman.
Iyon ang dahilan kung bakit gagamitin namin Laravel dahil sa tuktok ng PHP,
Nagbibigay sa iyo ito lamang ang nalalaman.
At lamang upang magturo sa iyo, pagkatapos, para sa isang sandali, ako pagpunta sa pumunta
sa isang direktoryo v-host
sa isang sample application gamit Laravel.
Sa unang tingin, lantaran, ito ay marahil ng isang bit napakalaki
dahil may mga kaya marami mga file, kaya maraming mga direktoryo,
ngunit ang mga mahalagang bagay, at bilang ipapakita namin makita pagkatapos ng isang mabilis na break,
ay mag-focus lamang sa ang pinaka-dyermeyn bagay
sa nagsisimula pa tapos ang ilang mga trabaho sa una, at na ang nangyayari
upang maging sa apt direktoryo.
Tulad ng makikita mo at maririnig, mayroong ay isang bungkos ng mga folder pa rin,
ngunit ang mga nasa pagpunta sa pinapahalagahan tungkol sa, lalo na, ang mga ito.
Kung buksan up ako stop na ruta PHP, abiso bilang isang teaser,
paano ang application na ito ay tungkol sa upang gumana.
Ito ay isang reimplementation sa Laravel
ng sobrang simple nakababagod kurso application
na nagbigay sa akin linggo zero, linggo isa, mga aralin, at ang mga PDF.
Lamang ako pupunta upang tukuyin - aking screen ay isang maliit na off cut,
muli - pupuntahan ko tukuyin ang mga sumusunod,
na gusto ko bang tukuyin ang isang ruta gamit ang HTTP get para sa slash,
at tuwing may gumagamit para sa mga pagbisita application iwa
sa aking website, gusto kong i-execute ang hindi kilalang mga tipak ng code,
lalo bumalik view ng make colon.
Kaya ito ay nangangahulugan na tawag isang static na pamamaraan sa loob
ng isang klase na tinatawag na view, at make-render ng isang template
na ay tinatawag na index, at ito ay ipinapasa sa isang bungkos
ng mga pangunahing mga pares ng halaga, sa kasong ito, pamagat.
Samantala, kung ang user mga pagbisita iwa mga aralin,
ang code na ito ay dapat isakatuparan,
at ang template ng mga aralin dapat makakuha ng render.
Panghuli, kapag binisita ng gumagamit aralin iwa isang bagay,
kung saan na may isang bagay ay, per ibaba dito, isang numero,
isa o higit pang mga decimal digit,
pagkatapos ay gusto kong i-render ng template ang mga aralin,
pagpasa sa pamagat pati na rin.
Kaya ang resulta ay na -
kung talagang ako bulislisin ito application sa aking browser,
ang resulta - Oops.
Ang katapusan ng resulta ay eksaktong pareho,
kahit na may bahagyang sexier URL ngayon.
Ngayon ito ay isang panayam slash 0 sa halip na linggo zero tuldok PHP.
Ngunit, ni-pause dito ipaalam.
Hayaan ang kumuha ng isang dalawang-minutong masira, at kapag dumating namin pabalik,
Tim ay pagpunta sa dumating sa up at kitang ipakilala sa amin
sa inner workings ng Laravel at ang uri
ng pag-andar tayo tungkol sa upang makakuha ng sa labas ng kahon.
>> Ang lahat ng mga karapatan, sa gayon, ngayon kami ay pagpunta sa nagtatagal ng mas malalim na dive
sa framework Laravel PHP, kung saan si David nabanggit.
Kaya Laravel, ang unang lugar kami ay pagpunta sa simulan ay pagpunta
sa mabilis na pagsisimula
at i-install ito sa pamamagitan ng isang bagay na tinatawag na kompositor.
Kaya kompositor ay isang sistema ng pamamahala ng package
para sa PHP katulad hiyas para sa Ruby o hukay
para Python o MPM para Walang JS.
Kompositor ay tumutulong upang pamahalaan ang lahat ng ang iba't ibang mga dependency
na Laravel ay depende sa kapag - Uri ng, sa ilalim ng hood.
Ito ay gumagamit ng maraming mga simponya,
isa pang balangkas ng PHP inner workings.
At, sa gayon, kami makapupunta gamitin ang commandline
na bigyan sila sa amin dito, kompositor lumikha proyekto Laravel Laravel,
pagkatapos na-install namin ang kompositor utility,
kung saan ay mayroon na akong tapos sa - sabihin makita.
Kaya ako gamit ang CS 50 appliance
dahil ito ay mayroon ng lahat ng Mga bersyon ng PHP at ang aking SQL
at lahat ng bagay na kailangan namin upang makapagsimula sa pagtakbo.
Kaya pupuntahan ko sige at hilahin pataas ang terminal dito
at tumalon sa v-host direktoryo, at ako pupunta
upang i-paste ito - oh, ako Hindi maaaring gawin ito na paraan.
Kaya Pupunta ako sa SSH sa halimbawa sa Linux
na ako nagpapatakbo sa VMWare.
At ako pagpunta sa patakbuhin ang Kompositor lumikha proyekto Laravel,
at pupuntahan ko baguhin ang pangalan ng iyong proyekto
sa makatarungan halimbawa tuldok dev.
At sa likod ng mga eksena,
ito ay tumatagal ng ilang sandali ang unang pagkakataon na ikaw ay pagpunta
upang gawin ito, ngunit ito ay i-install ang lahat ng mga dependency
na kayo ay pagpunta sa kailangang magpatakbo ng Laravel.
Kaya sana Ginagawa ito hindi tumagal masyadong mahaba.
Dapat itong tumagal lamang ng pangalawang.
Sa unang pagkakataon na gawin mo ito, aabutin ng ilang minuto,
marahil, sapagkat ito Kailangan upang makakuha ng lahat ng bagay.
Ang lahat ng ito ko pa naka-cache na dito.
Kaya ngayon na mayroon kami Halimbawa tuldok dev, kung ano kami ay pagpunta sa kailangan
gawin upang ma-access ito
sa aming Chrome browser ay sige at sumali na sa -
kami ay pagpunta sa palsipikado sa pamamagitan ng Etsy host file.
At kami ay pagpunta sa sige at magdagdag ng isang bagong linya dito sa IP
sa mga 50 appliance, na kung saan ay ipinapakita dito
sa ibabang kanang sulok ng screen, ang 192 168 -
at ito ay maaaring maging iba depende sa iyong machine,
kaya 192 168 69 128 [audio masira] Halimbawa proyekto tuldok dev.
Okay. I-save na.
Kaya, ngayon, kung pumunta kami sa example dot dev, makikita natin ang - sabihin makita.
Oh, ako ay nasa maling direktoryo, kaya ipaalam sa akin sige
at igalaw ang halimbawa tuldok dev papunta sa direktoryo ng v-host.
At ngayon kung i-refresh namin ito, kami makita na sinasabi nito ipinagbabawal.
Wala kang access.
Kaya kailangan namin upang pumunta sa direktoryo halimbawa tuldok dev
sa V-host, at kailangan naming i-chmod ito sa 0711, ang halimbawa tuldok dev,
pati na rin ang pampublikong - oh, Ginawa ko na mali ang parehong ulit.
Kaya ang halimbawa tuldok dev, bilang na rin ang pampublikong direktoryo
na sa ilalim ito, upang ito ay magawa
upang makakuha ng sa index ng tuldok PHP.
At ngayon, kung refresh namin - oh, nagkakaproblema pa rin kami ng mga problema.
Kaya sa loob ng halimbawa pampublikong direktoryo,
kung ililista namin ang lahat ng mga file, kabilang ang mga nakatagong mga bago,
mayroong isang HD-access ang file, at ito ay ginagamit ng Apache
upang makatulong na matukoy, para sa ang tiyak na direktoryo,
kung saan dapat iruruta kahilingan.
Kaya Kailangan rin ito upang ma-chmoded sa 0644, at ngayon na dumating ka.
Kaya na ay ang mabilis na i-install ng Laravel sa pamamagitan ng commandline.
Kaya sabihin sige, at ako pupunta upang gamitin ang isang bagay na tinatawag na Samba.
Kung hindi ka pamilyar sa mga ito, maaari mong - mula sa menu tagahanap,
pumunta sa pumunta at kumonekta sa server, at maaari mong sige
at gawin SMB colon slash iwa at ang IP address
ng halimbawa ng Linux na hindi namin tumatakbo sa VMWare at sige
at kumonekta sa server sa gayon ay maaari mo itong i-mount
bilang file system at gamitin ito
bilang kung ikaw ay locally nakakonekta ito.
Kaya pupuntahan ko pumunta magpatuloy at hilahin ito
sa isang editor na tinatawag na napakaganda teksto.
Kung hindi ka pamilyar, ito ay isang talagang magandang editor
na magagamit i-edit ang mga file code.
At kaya kami ay pagpunta tingnan
sa direktoryo istraktura para sa proyekto.
Kaya mayroong ilang iba't ibang mga folder sa tuktok na antas.
Mayroong app, na si David ay nabanggit na.
Mayroong bootstrap, na mga ang ilang mga file na ginagamit panloob
sa pamamagitan ng Laravel upang bootstrap lahat ng mga dependency, load ang mga ito lahat sa,
siguraduhin na ang lahat ng mga magic pamamaraan ay tinatawag na maayos
upang magawang [audio bakasyon].
Mayroong mga pampublikong direktoryo, na kung saan lahat
sa aming mga asset nakaharap sa publiko, tulad ng index ng tuldok PHP
kung saan mga kahilingan ay iruruta, imahe, CSS file, JavaScript,
anumang bagay na kailangang maging direktang ma-access
sa pamamagitan ng mundo ay nabubuhay sa ang pampublikong direktoryo.
At pagkatapos ay ang direktoryo ng vendor ay ang lahat ng mga asset -
o lahat ng mga [audio bakasyon] sa ilalim ng hood na ginagawa ng maraming
ng mabigat na nakakataas na Laravel ay depende sa.
Kaya karaniwan, sa isang pampublikong direktoryo, ito ang uri
ng kung ano ang iyong nakikita, ang CSS, JavaScript,
mga file na iyon ay hindi doon kapag mong i-install ang framework,
ngunit ang mga ito ay mga bagay na ikaw ay malamang na gusto mong idagdag
bilang ka sa pagbuo ng out ang iyong mga application.
Ang HD access file na ako Binanggit at ang index ng tuldok PHP,
kung saan ay ang front controller para sa -
kung saan ang lahat ng mga kahilingan pumunta sa simula sa pamamagitan ng.
Kaya sa loob ng application folder, ang mga ito ay -
may tunay na isang pares -
doon ay aktwal na ang ilang mga iba't ibang mga folder dito.
Marami sa mga ito, at tulad ng nabanggit ni David,
maaari itong tinatalo sa una, ngunit nais mo lamang na pag-isiping mabuti
sa mga partikular na.
Kaya doon ay ang mga ruta dot PHP, na kung saan ay kung ano ang nakita natin mas maaga
upang ipakita na maaari mong ruta isang partikular na paraan URL at HTP
sa isang tiyak na alinman sa hindi nakikilalang function, bilang ay ang paggamit David,
o isang Controller, na Ikinalulungkot namin tungkol sa upang pumunta sa ibabaw.
Mayroong mga config folder,
na kung saan itinakda mo ang anumang configuration ng application
na kailangan mo, tulad ng Mga setting ng database o anumang mga API
na sa iyo ay maaaring pakikitungo sa.
Kung gumagamit ka ng isang bagay upang magpadala ng mail
o kung gumagamit ka ng pagkonekta sa Amazon upang mag-imbak ng mga imahe,
Gusto mong itakda ang lahat ng mga configuration
sa gitnang punto sa application upang ang -
uri ng mga convention na lahat ng tao, gaya ng mga ito Nagsusumikap
sa isang team, hindi mo kailangang i- isipin ang tungkol kung saan ay na ito.
Lamang Ito ay mayroon kang itakda ang lugar kung saan ito mapupunta.
Iyon ay magiging sa config.
Controllers ay ang mga ilagay sa application
kung saan karaniwan mong mga kahilingan sa ruta.
Kaya ang controller nakakahawak ng marami ng application logic
at uri ng Pick ano ang display ng screen ay pagpunta
maging, ang tanawin, at pagkatapos din shell
out sa iba't ibang mga modelo na naglalaman ng data
at pumasa sa mga sa view.
Kaya mo uri ng - ang controller ay isang uri ng mga despatsador
para sa mga kahilingan, alam mo na, kung ano ang iyong pagpunta sa gawin
may data - o may - depende sa kahilingan ay,
kung anong data ang dapat ipakita at kung saan ako makakakuha namin ito mula sa.
At ang mga view karaniwang lamang ng HTML,
siguro gamit ang isang templating engine, pati na kami ay pagpunta sa pumunta
sa ibabaw gamit ang talim templating engine na Laravel ships na may.
At pagkatapos ay ang iba pang mga direktoryo para sa ngayon, lang kami ng pagpunta
sa uri ng pagtakpan at hindi mag-alala tungkol sa.
Ngunit ang mga isama ang mga pagsubok, sa gayon yunit ng pagsubok-free application,
filter, imbakan.
Panatilihin ko ang paggawa nito.
Ang lahat ng mga karapatan, paglukso i-back sa paglipas dito.
Kaya ang unang bagay na ito ay may ay makakuha sa rutang ito
at ito ang pagtingin gumawa ng halo.
Kaya't kung tiningnan namin sa ang direktoryo ng tanawin,
makikita natin na mayroong ay isang halo tuldok PHP,
at iyon ang kung saan mo ito dumating ay nagmumula sa.
Ngunit maaari naming ring baguhin ito sa -
kaya, maaari naming baguhin ito sa kumusta, at ngayon, kung sinusubukan naming pumunta
sa isang ruta na ay hindi natukoy makuha namin ang ganitong uri ng stack trays
bilang sa kung ano ang nangyaring mali gamit ang application.
Ngunit kung pumunta kami iwa kumusta,
doon ay talagang isang panloob na error sa server.
Kaya mayroong isang kaunting magic ng pagpunta sa likod ng mga eksena
sa CS 50 appliance upang tiyakin na nagagawa mong
upang pangalanan ang lahat ng mga mga direktoryo Maginhawang.
Ang pangalan ng - kaya ang Halimbawa tuldok dev na aming binigay.
Kaya talaga namin kailangang mag- baguhin ang isa sa higit pang bagay
sa HD access file.
Kaya kami ay pagpunta sa sige
at idagdag ang linyang ito, muling isulat ang base ng slash.
At na talaga ay isa pang direktiba.
David, maaari kang makipag-usap nang higit pa sa ano ang pagsulat na muli ng base gumagana.
>> Itong mahalagang corrects higit pa sa kung ano ang palagay ni ang server.
Ito ay dapat na maging Virtual host [hindi marinig].
Kaya pagtukoy na huwag pansinin na sa pamamagitan ng muling isulat ang base slash address.
>> Right. Kaya, ngayon, iwa kumusta gumagana nang wasto.
Kaya ng tumalon pabalik sa paglipas dito ipaalam.
Kaya kasama lamang ang paggawa ng isang anonymous function na tulad nito,
may - kaya ito ay isang pagbabalik-tanaw lamang
ng MVC ako ay lamang tinatalakay.
Ito napupunta sa mga ruta at pagkatapos ay i-shell out ang controllers,
na deal na may mga modelo at mga tanawin at kung paano lahat
na dapat Aaksyunan may.
Kaya controllers ay isang uri ng - makatulong upang magsagitna ang lahat ng iyon,
at maaari mong i-access ito sa pamamagitan ng mga ruta sa pamamagitan ng nagsasabi makakuha ng ruta.
Kaya maaari naming sabihin makakuha ng ruta kumusta,
at pagkatapos ay ang controller pangalanan sa at ang isang pangalan ng pamamaraan.
Kaya sabihin sige at bigyan na ang isang shot.
Kaya muli naming sabihin ruta makakuha ng iwa kumusta,
at kami na isang halo controller sa palabas kumusta.
Kaya sa order para sa ito upang gumana,
kailangan naming magdagdag ng isang file na tinatawag na kumusta controller na tuldok na PHP.
Makikita ba akong magpatuloy at - kaya ito Pinapalawak ng isang base ng controller,
saan Laravel na barko sa,
na kung saan ay umaabot ng controller, na kung saan ay uri ng sa ilalim ng hood
at nagagawa ng maraming mga bagay-bagay sa likod ng mga eksena
na tumutulong sa controllers upang pamahalaan ang lahat ng mga estado na ito
na nanggagaling sa ang application.
Kaya ang tahanan ng controller, sinabi namin Gusto ito ay pinangalanan palabas kumusta.
At kami ay lamang - sa halip ng bumabalik sa isang view,
babalik kami lang kumusta mundo.
Oh, kumusta - oh, kinopya ko ito.
Kamusta controller.
Kaya kumusta mundo.
Kaya na ay isang talagang lamang, talaga simpleng halimbawa
kung paano mo maaaring lumikha controllers.