Parastās kļūdas, ko izstrādātāji bieži pieļauj Laravelā, ietver virkni problēmu, sākot no konfigurācijas kļūdām līdz neefektīvai kodēšanas praksei. Šeit ir daži no biežākajiem:
Parastās laravel kļūdas izstrādātāji izdara
- Nav lietojumprogrammu atslēgas komplekta
Aizmirstot iestatīt lietojumprogrammas atslēgu (`App_key`) failā` .env` noved pie drošības un šifrēšanas jautājumiem. Šī ir izplatīta izvietošanas kļūda [6].
- datu bāzes tabula nav atrasta
Tas notiek, ja migrācija netiek palaista vai tabulas nosaukums vaicājumos nav pareizs.
- norādītā atslēga bija pārāk gara
Šī kļūda rodas datu bāzes shēmas ierobežojumu dēļ, īpaši ar vecākām MySQL versijām un virknes kolonnu garumiem.
- HTTP 419 lapas derīguma termiņš beidzas
Parasti to izraisa trūkstoši vai nederīgi CSRF marķieri formās vai Ajax pieprasījumos.
- atļauja noliedza kļūdu: neizdevās atvērt straumi
Failu atļaujas problēmas glabāšanas vai kešatmiņas direktorijos var izraisīt šo kļūdu.
- Komponista automātiskās ielādes problēmas
Namespace vai klases ceļa neatbilstības, kurām nepieciešama darbība “komponista izgāztuvju automātiskā ielādēšana”, lai labotu automātisko ielādi [5].
- klase nav atrasta izņēmums
Notiek, ja klases nosaukumvieta vai faila ceļš nav pareizs vai automātiskā ielāde netiek atjaunināta [5].
- maršruts nav atrasts
Bieži kešatmiņā saglabātu maršrutu dēļ netiek notīrīti pēc maršruta maiņas; atrisināts ar `PHP amatnieku maršrutu: skaidri` [5].
- datu bāzes savienojuma kļūdas
Nepareiza `.env` datu bāzes konfigurācija vai datu bāzes serveris ir samazinājies [5].
- n+1 vaicājuma problēma
Galvenā veiktspējas nepilnība, kurā slinkie ielādēšana izraisa daudzus datu bāzes vaicājumus, nevis ar dedzīgu ielādēšanu saistītos modeļos. Piemēram, atnest ziņojumus un pēc tam viņu komentāri cilpā, nepacietīgi ielādējot, noved pie simtiem vaicājumu [2] [4]. Labojums ir izmantot dedzīgu ielādi ar `ar ()`.
- Neizmantojot maršruta modeļa iesiešanu
Iesācēji bieži manuāli vaicā modeļus kontrolieros, nevis izmanto Laravela maršruta modeļa iesiešanu, kas vienkāršo kodu un uzlabo lasāmību [2] [7].
- Pārāk garš daiļrunīgs izveidošanas/atjaunināšanas kods
Verboza un atkārtota daiļrunīga koda rakstīšana, nevis masveida piešķiršanas vai veidlapas pieprasījumu izmantošana validēšanai un datu apstrādei [2] [7].
- Trūkst pieprasījumu atļaujas
Neieviešot autorizācijas loģiku veidlapu pieprasījumu klasēs, izraisot drošības jautājumus [4].
- nepareizas atkarības starp slāņiem
Sajaukšanas atkarības, piemēram, modeļi, ir atkarīgas no HTTP pieprasījumiem vai resursiem, kas pārtrauc bažu atdalīšanu un padara kodu mazāk atkārtoti izmantojamu [4] [5].
- Trūkst “Kad tiek ielādēts ()` resursos
Pirms piekļuves API resursiem nav jāpārbauda, vai attiecības ir ielādētas, izraisot nevajadzīgus jautājumus un veiktspējas trāpījumus [4].
- Pārāk daudz datu ielāde no datu bāzes
Neefektīvi vaicājumi, kas iegūst vairāk datu, nekā nepieciešams, kas var pasliktināt veiktspēju [5].
- ķēdes daiļrunīgas ķēdes, nepārbaudot
Akli ķēdes vaicājumi, neapstiprinot ieejas vai apstākļus, izraisot negaidītus rezultātus vai kļūdas [5].
- API, kas atgriež 2xx statusa kodu ar kļūdām
Veiksmīgu HTTP statusa kodu atgriešana pat tad, ja API atbilde satur kļūdu ziņojumus, kas klientiem ir maldinoši [5].
Šīs kļūdas aptver plašu spektru no konfigurācijas, datu bāzes, maršrutēšanas, kodu projektēšanas un veiktspējas jautājumiem. To risināšana nozīmē, ka Laravel paraugprakse, piemēram, maršruta modeļa saistīšanas izmantošana, dedzīgas iekraušanas attiecības, pareiza atkarības pārvaldība un kešatmiņas notīrīšana pēc izmaiņām [2] [4] [5].
Atsauces:
[1.]
[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-inavel
[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-yniors-make-laravel-1c5b