| Eno vprašanje glede Laravel 5 | ||
|---|---|---|
|
thai
26. maj 2015 09:02:34
Pridružen od: 14. dec 2014 81 objav 32 31 2 |
#1
Recimo ustvarim en model in ga kličem/inicializiram v controllerju tako, da mu zapišem atribute. Ti se jasno prenesejo v _construct od Eloquent modela (ne mojega modela ampak onega privzetega extendanega, ker v mojem modelu nimam _construct()), ki pa naredi kaj? Vse te vrednosti zapiše v polje $attributes, ne? Recimo sedaj pa v controllerju preko modela ustvarim še neke nove lastnosti (preko setters) in Laravel v ozadju spet samodejno vse te lastnosti vrže v lastnost/polje $attributes (doda jih že obstoječim), ne? Ko poženem metodo save() pa se izvede query točno na podlagi vrednosti iz $attributes, ne? Upam, da sem bil dovolj jasen, drugače lahko dam kak primer, da bo bolj razumljivo ampak je kar nekaj kode, pa se mi ni dalo v prvo vse kopirati :P *Uporabniku je bila prepovedana uporaba foruma zaradi večih uporabniških računov, ki so po [pravilih obnašanja](/pravila.html) prepovedani.*
|
|
|
bostjan
26. maj 2015 10:24:22
Pridružen od: 31. jul 2008 643 objav 689 30 9 |
#2
|
|
|
thai
26. maj 2015 10:59:32
Pridružen od: 14. dec 2014 81 objav 32 31 2 |
#3
Vse dela tako kot mora, samo zanima me zakaj dela ;) Koda je iz tega vodiča https://laracasts.com/series/build-your-first-app-in-laravel/episodes/9 V bazo želimo zapisati združene podaatke iz session + podatke iz request. Imamo model Notice in NoticesController. NoticesController.php Notice model Zanima me tale koda... Torej najprej inicializiramo Notice objekt, mu damo argument $data (podatki se pošljejo v _construct in tu se vsebina zapiše v Laravel $attributes polje?), potem poženemo ustvarjeno useTemplate() metodo, katere podatke zapišemo v $this->template = $template; torej lastnost $template. V ozadju pa tudi te podatke Laravel priključi polju $attributes? Verjetno preko setters, ker jasno $template nimamo definirano zato se zažene magic method _set(), ki te podatke (verjetno) zapiše v $attributes? Na koncu pa lepo celotno polje $attributes Laravel uporabi za formacijo query (save()). Si prav predstavljm ali je kje napaka? V vodiču Jeffrey ni šel ravno v preveč detajle. Seveda je zgornja koda po moje brezveze zakomplicirana, ker bi se dalo vse skupaj enostavno zapisati kot kar je tudi prikazano v naslendjem vodiču. *Uporabniku je bila prepovedana uporaba foruma zaradi večih uporabniških računov, ki so po [pravilih obnašanja](/pravila.html) prepovedani.*
|
|
|
thai
26. maj 2015 11:02:45
Pridružen od: 14. dec 2014 81 objav 32 31 2 |
#4
Pa ker mam občutek, da obvladaš, bi te še nekaj vprašal :) Zgoraj kjer smo z open() inicializirali objekt, torej bi lahko zapisali na primer tudi $notice = new Notice->useTemplate($request->input('template')); ali tole ne bi šlo in bi morali zapisati $notice = new Notice; (saj vem, da bi lahko tudi sam preveri ampak vseeno vprašam) *Uporabniku je bila prepovedana uporaba foruma zaradi večih uporabniških računov, ki so po [pravilih obnašanja](/pravila.html) prepovedani.*
|
|
|
bostjan
26. maj 2015 13:17:21
Pridružen od: 31. jul 2008 643 objav 689 30 9 |
#5
No saj si kar natančno opisal kaj dela :) Recimo tole poimenovanje konstruktorja jaz ne bi šel delat. Ne vidim pointa (in kot Way omeni, je to samo neko logično poimenovanje konstruktorja.....kaj za hudiča pa konstruktorju fali). Lahko bi dal tako kot si rekel: Če rabiš gledat kako gre v droboje imaš prov zato serijo "Advanced Eloquent". Sam jo še nisem pogledal in ne vem koliko razloži. |
|
|
thai
26. maj 2015 18:02:57
Pridružen od: 14. dec 2014 81 objav 32 31 2 |
#6
Se mi je zdelo, da je nekaj takšnega. Hvala za potrditev ;) Se še učim Laravel in OOP pa se še malo lovim. Tudi meni se zid, da je tole z open() nepotrebno, se pa vsaj naučiš nekaj novega. Advanced Eloquent pride pa še na vrsto :) *Uporabniku je bila prepovedana uporaba foruma zaradi večih uporabniških računov, ki so po [pravilih obnašanja](/pravila.html) prepovedani.*
|
|
|
bostjan
26. maj 2015 19:24:08
Pridružen od: 31. jul 2008 643 objav 689 30 9 |
#7
ja Jeffery rad kje malo pretirava. Oz....pač ti pokaže opcijo kako se to lahko naredi, ne pravi pa, da moraš ti tako naredit. Če greš poslušat podcaste Taylor lepo prizna, da njegovi projekti tako rekoč nimajo repozitorijev. Ker jih pač ne rab, pa tudi če vsi samo še o tem govorijo. Če bo pa še kaj, pa kar vpraš. |
|
|
thai
27. maj 2015 19:24:11
Pridružen od: 14. dec 2014 81 objav 32 31 2 |
#8
Imam še eno težavo. Sicer ni neposredno povezava z Laravel ampak verjetno prej z administracijo strežnika. Ko želim poslati kakšen email preko Mandrill (guzzlehttp/guzzle:~5.0 seveda nameščen), se mi izpiše spodnja napaka
Odpraviti sem jo poskusil s temle navodil ampak žal brez uspeha (zapis sem dodal v php.ini od apache - ne od php) http://stackoverflow.com/questions/21114371/php-curl-error-code-60 Uporabljam Win 7, WAMP 2.4. curl nastavitve, če komu kaj pomaga
Ve kdo v čem je problem? Saj vem, da bi na strežniku verjetno vse delovalo ampak bi rad uredil tako, da mi bo tudi na localhost. *Uporabniku je bila prepovedana uporaba foruma zaradi večih uporabniških računov, ki so po [pravilih obnašanja](/pravila.html) prepovedani.*
|
|
|
SlimDeluxe
28. maj 2015 06:31:32
Pridružen od: 29. apr 2010 1223 objav 1022 144 9 |
Freelance Web Developer
|
|
|
OvcaX
28. maj 2015 07:17:22
Pridružen od: 24. avg 2007 2753 objav 4575 1194 281 |
||


