Įprastos klaidos, kurias kūrėjai dažnai daro „Laravel“, apima daugybę problemų nuo konfigūracijos klaidų iki neefektyvios kodavimo praktikos. Čia yra keletas dažniausių:
Bendrosios „Laravel“ klaidų kūrėjai daro
- Nėra taikymo raktų rinkinio
Pamiršus nustatyti programos klavišą (`app_key`)„ .env` faile “sukelia saugumo ir šifravimo problemas. Tai yra įprasta diegimo klaida [6].
- Duomenų bazės lentelė nerasta
Tai įvyksta tada, kai migracijos nėra vykdomos arba lentelės pavadinimas neteisingas užklausose.
- nurodytas raktas buvo per ilgas
Ši klaida atsiranda dėl duomenų bazės schemos apribojimų, ypač dėl senesnių „MySQL“ versijų ir eilutės stulpelių ilgio.
- HTTP 419 puslapio galiojimo laikas
Paprastai tai sukelia trūkstami ar netinkami CSRF žetonai formose ar AJAX užklausose.
- Leidimas atmesta klaida: nepavyko atidaryti srauto
Failo leidimo problemos saugojimo ar talpyklos kataloguose gali sukelti šią klaidą.
- Kompozitoriaus „Autoload“ problemos
Vardų srities ar klasės kelio neatitikimai, kuriems reikia paleisti „kompozitoriaus dump-aktoroad“, kad būtų galima ištaisyti automatinį įkėlimą [5].
- klasė nerasta išimtis
Atsitinka, kai klasių vardų sritis ar failo kelias yra neteisingas arba „Autoload“ neatnaujinamas [5].
- Maršrutas nerastas
Dažnai dėl talpyklos maršrutų nebuvo išvalyti pakeitus maršrutą; Išspręsta „php amatisan“ maršrute: aišku “[5].
- Duomenų bazės ryšio klaidos
Neteisingas `.env` duomenų bazės konfigūracija arba duomenų bazės serveris sumažėjo [5].
- n+1 užklausos problema
Pagrindinė našumo trūkumas, kai tingus įkėlimas sukelia daugybę duomenų bazių užklausų, o ne su nekantriais įkrovimo modeliais. Pavyzdžiui, pranešimų gavimas ir tada jų komentarai nekantriai įkeliant sukelia šimtus užklausų [2] [4]. Pataisymas yra naudoti nekantrią pakrovimą su `su ()`.
- Nenaudokite maršruto modelio įrišimo
Pradedantieji dažnai rankiniu būdu užklausia valdiklių modelius, užuot panaudoję „Laravel“ maršruto modelio surišimą, o tai supaprastina kodą ir pagerina skaitomumą [2] [7].
- Per ilgas iškalbingas kūrimo/atnaujinimo kodas
Rašyti žodį ir pasikartojantį iškalbingą kodą, užuot naudojęsi masės priskyrimo ar formos užklausas patvirtinti ir tvarkyti duomenis [2] [7].
- Trūksta leidimo prašymuose
Neįgyvendinant autorizacijos logikos formos užklausų klasėse, dėl kurių kyla saugumo klausimai [4].
- Neteisingos sluoksnių priklausomybės
Sumaišymas priklausomybės, tokios kaip modeliai, priklauso nuo HTTP užklausų ar išteklių, kurie nutraukia rūpesčių atskyrimą ir daro kodą mažiau daugkartinio naudojimo [4] [5].
- Trūksta „Kai pakraunama ()` į išteklius
Netikrina, ar santykiai įkeliami prieš patekant į juos į API išteklius, sukeliant nereikalingų užklausų ir atlikimo hitų [4].
- Įkelia per daug duomenų iš duomenų bazės
Neefektyvios užklausos, kuriose pateikiamos daugiau duomenų, nei reikia, kurie gali pabloginti našumą [5].
- grandininis iškalbingas netikrinimas
Aklai grandinės užklausos nepateisinant įvesties ar sąlygų, todėl gaunami netikėti rezultatai ar klaidos [5].
- API grąžina 2xx būsenos kodą su klaidomis
Grąžinant sėkmingus HTTP būsenos kodus net tada, kai API atsakyme yra klaidų pranešimai, o tai klaidina klientams [5].
Šios klaidos apima plačią spektrą - nuo konfigūracijos, duomenų bazės, maršruto nustatymo iki kodo projektavimo ir našumo problemos. Jų sprendimas apima geriausios „Laravel“ praktikos, tokios kaip maršruto modelio surišimo, noro įkėlimo ryšių, tinkamo priklausomybės valdymo ir talpyklų išvalymo po pakeitimų naudojimas [2] [4] [5].
Citatos:
[1] https://www.linkedin.com/pulse/common-errors-laravel-development-how-modernize-acquaintsofttech-serf
[2] https://laraveldaily.com/post/laravel-typical-mistakes-juniors-make
[3] https://www.reddit.com/r/laravel/comments/qds6nk/what_are_some_of_the_mistakes_youve_made_and/
[4] https://martinjoo.dev/common-mistakes-in-laravel
[5] https://dev.to/saif_uddin/here-are-some-common-problems-that-developers-face-with-laravel-14a6
[6] https://laracasts.com/discuss/channels/laravel/errors-in-production
[7] https://dev.to/morcosgad/typical-mistakes-juniors -make-laravel-1c5b