Laravel və Eloquent proqramların və platformaların işlənməsini sürətləndirməyə kömək edir, əksər problemlərə adekvat həll yolu təqdim edir. Tələblər daha sürətli inkişaf, eləcə də yaxşı təşkil edilmiş, təkrar istifadə edilə bilən, saxlanıla bilən və genişlənə bilən kodla həll edilir.
Tərtibatçılar işləyə bilər Eloquent
ActiveMethod tətbiqindən səmərəli istifadə edərək çoxsaylı verilənlər bazası ilə. Model-View-Controller (MVC) strukturunda yaradılmış modelin verilənlər bazasındakı cədvələ uyğun olduğu memarlıq nümunəsidir. Fayda ondan ibarətdir ki, şablonlar uzun SQL sorğularını kodlaşdırmadan ümumi verilənlər bazası əməliyyatlarını yerinə yetirir. Şablonlar cədvəllərdəki məlumatları sorğulamağa və cədvəllərə yeni qeydlər daxil etməyə imkan verir. Müxtəlif sistemlərdə işləyən çoxsaylı verilənlər bazalarının sinxronizasiyası prosesi sadələşdirilmişdir. SQL sorğuları yazmağa ehtiyac yoxdur. Bütün etməlisən defiVerilənlər bazası cədvəllərini və onlar arasındakı əlaqələri tamamlayın və Eloquent qalan işləri görəcək.
Eloquent ORM-nin faydasını qiymətləndirmək və ekosistemi başa düşmək mütləqdir. Başlamaq üçün addımlar:
migration
konsoldan istifadə etməklə Artisan
eloquent
seed
verilənlər bazasındanArtisan Console
Laravel-ə daxil olan komanda xətti interfeysinin adıdır. Tətbiqinizi inkişaf etdirərkən istifadə etmək üçün faydalı əmrlər toplusunu təmin edir. Güclü komponent tərəfindən idarə olunur Symfony Console
.
Bütün mövcud Artisan əmrlərinin siyahısını görmək üçün siyahı əmrindən istifadə edə bilərsiniz:
php artisan list
Bütün əmrlər onun arqumentlərinin və variantlarının qısa təsviri ilə gəlir. Bu, "kömək" ekranında göstərilir. Yardım ekranını göstərmək üçün əmr adından əvvəl göstərildiyi kimi “kömək” yazmağınız kifayətdir:
php artisan help migrate
Migration
Miqrasiya əvəzinə PHP yazmaqla verilənlər bazası idarəetmə prosesidir SQL
. Versiya nəzarətini verilənlər bazasına əlavə etmək üçün bir yol təqdim edir.
Miqrasiya yaratmaq üçün aşağıdakı əmri yerinə yetirmək kifayətdir:
php artisan make:migration create_student_records
Bu, miqrasiya faylını yaradır. Mətn redaktorunuzda qovluqda yeni yaratdığınız faylı açın database\migrations
:
<?php
use IlluminateSupportFacadesSchema;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateDatabaseMigrationsMigration;
class CreateStudentRecordsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('student__records', function (Blueprint $table) {
$table->increments('id');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('student__records');
}
}
Kod eyni adlı sinifdir 'create student records
' və iki üsulu var: yuxarı və aşağı. Up metodu verilənlər bazasında dəyişikliklər etməlidir; belə ki, siz verilənlər bazanızı hər dəfə köçürdükdə, yuxarı metodunda istənilən kod icra olunacaq. Digər tərəfdən, aşağı metodu verilənlər bazası dəyişikliklərini geri qaytarmalıdır; belə ki, siz nə zaman run rollback
of migration
, aşağı metodu yuxarı metodunun etdiklərini geri almalıdır. Metod daxilində up
cədvəlləri yaratmaq və manipulyasiya etmək üçün istifadə edilən sxem qurucusu var. Bəzi miqrasiyalarınızı ləğv etsəniz nə olar? Etməli olduğunuz şey aşağıdakı əmri yerinə yetirməkdir:
php artisan migrate:rollback
Və sonuncunu yığacaq migration
həyata keçirilmişdir. Həmçinin, işlətməklə verilənlər bazasını tam bərpa edə bilərsiniz:
php artisan migrate:reset
Bu, bütün miqrasiyalarınızı ləğv edəcək.
Eloquent
Verilənlər bazası miqrasiyası tamamlandıqdan sonra növbəti prosesdir seeding
. Eloquent
ildən fəaliyyətə başlayır seeding
məlumat bazamıza qeydlər daxil edir. Beləliklə, verilənlər bazasını doldurmazdan əvvəl şablonları yaratmalısınız. Hər bir verilənlər bazası cədvəlində həmin cədvəllə qarşılıqlı əlaqə yaratmaq üçün istifadə olunan müvafiq model var. Şablonlar sizə cədvəllərinizdəki məlumatları sorğulamağa, həmçinin cədvələ yeni qeydlər daxil etməyə imkan verir. Modeli yaratmağın ən asan yolu aşağıdakı əmrdən istifadə etməkdir:
php artisan make:model Student
Şablon nümunəsi aşağıda göstərilmişdir Student
, tələbəmizin verilənlər bazası cədvəlindən məlumat almaq və saxlamaq üçün istifadə edilə bilər:
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class Student extends Model
{
//
}
Bir model yaratdığınız zaman və eyni zamanda verilənlər bazası miqrasiyası yaratmaq istədiyiniz zaman seçimdən istifadə edə bilərsiniz –migration
o -m
:
php artisan make:model Student --migration
php artisan make:model Student -m
Ümumi toxum səpənlər verilənlər bazamızı təkrar-təkrar eyni məlumatlarla doldurmağa imkan verən xüsusi siniflər dəstidir. Aşağıdakı əmri yerinə yetiririk:
php artisan make:seeder StudentsRecordSeeder
Mətn redaktorunda, toxum qovluğunun altında, fayl adı ilə yeni yaradılmış faylı açın: StudentsRecordSeeder.php
. Gördüyünüz kimi, bu, adlanan bir metodu olan çox sadə bir sinifdir run
🇧🇷
<?php
use IlluminateDatabaseSeeder;
class StudentsRecordSeeder extends Seeder
{
/**
* Run the database seeds
* @return void
*/
public function run()
{
//
}
}
Kod sadəcə tapşırıqda kömək etmək üçün xüsusi olaraq qurulmuş konsol komanda sinfi ətrafında sarğıdır seeding
. Kodu redaktə edin və sonra onu yadda saxlayın.
public function run()
{
echo 'Seeding!';
}
Və terminala gedirik:
php artisan db:seed --class=StudentsRecordSeeder
İndi cədvəli bəzi qeydlərlə doldurub işlədə bilərsiniz:
php artisan db:seed --class=class=StudentsRecordSeeder
Burada siz DB-dəki qeydləri silmək, əlavə etmək, dəyişdirmək, sonra onları sadə bir əmrlə bərpa etmək üçün davam edə bilərsiniz.
Laravel Eloquent obyekt-relational mapper (ORM) ilə CRUD əməliyyatları Laravel tərtibatçılarının çoxsaylı verilənlər bazası ilə işləməsini asanlaşdırır. O, yaratmaq, oxumaq, yeniləmək və silmək (CRUD) əməliyyatlarını yerinə yetirir və obyekt modellərini verilənlər bazası cədvəlləri ilə əlaqələndirir. CRUD əməliyyatları üçün tələb olunan bütün verilənlər bazası qarşılıqlı əlaqəsini idarə edir.
Verilənlər bazasına yeni qeyd daxil etmək üçün ::create metodundan istifadə edə bilərsiniz.
student_record::create(array(
'first_name' => 'John',
'last_name' => 'Doe',
'student_rank' => 1
));
Yuxarıda göstərilən sadə yaratma üsuluna əlavə olaraq, yeni bir obyekt yarada və ona müxtəlif atributlar verə bilərsiniz. Sonra save() funksiyasına zəng edib kodu işlədə bilərsiniz. kimi üsullar firstOrCreate
() və ya firstOrNew
() qeydlər yaratmaq üçün digər variantlardır. Bunlar sizə müəyyən xüsusiyyətlərə malik tələbə tapmağa imkan verəcək; əgər həmin tələbə tapılmazsa, siz onu ya verilənlər bazasında yaradacaqsınız, ya da yeni nümunəni yaradacaqsınız.
Eloquent ORM-dən istifadə edərək verilənlər bazanızda qeydləri tapa bilərsiniz. Sorğular sadəcə olaraq qurulur və hamar bir axın təklif edir. Bəyanatlar yaratmaq üçün::where
, üsullardan istifadə edəcəksiniz get
() Və first
(). Metod first
() metodu isə yalnız bir qeydi qaytaracaq get
() dönə bilən qeydlər sırasını qaytaracaq. Həm də üsul find
() uyğun qeydlər toplusunu qaytaracaq bir sıra əsas açarlarla istifadə edilə bilər. Budur bəzi nümunələr:
$student = Students::all();
Bu kod bütün tələbələri alır. Aşağıdakı kod şəxsiyyət vəsiqəsi ilə müəyyən bir tələbə taparkən:
$tələbə = Tələbələr::find(1);
Həmçinin, aşağıda göstərildiyi kimi, kod konkret atribut əsasında tələbə axtarışını təsvir edir.
$JohnDoe = Students::where('name', '=', 'John Doe')->first();
Get() metodu üçün bu kod səviyyəsi 5-dən yuxarı olan tələbənin necə tapılacağını göstərir.
$rankStudents = Student::where('student_rank', '>', 5)->get();
Eloquent istifadə edərək qeydləri yeniləmək eyni dərəcədə asandır. Qeydi yeniləmək üçün sadəcə yeniləmək istədiyiniz qeydi tapın, atributları redaktə edin və yadda saxlayın. Məsələn, John Doe-nin şagirdinin qiymət səviyyəsini 5-ə dəyişdirmək üçün əvvəlcə tələbəni tapın və sonra saxlama metodunu yerinə yetirin.
$JohnDoe = Bear::where('name', '=', 'John Doe')->first();
$JohnDoe->danger_level = 5;
$JohnDoe->save();
Saxlama üsulu verilənlər bazasında artıq mövcud olan modelləri yeniləmək üçün də istifadə edilə bilər.
Eloquent öz asan rekord yeniləmə prosesi ilə öyünür, lakin silinmə ilə eyni hekayəyə malikdir. İki seçim var: qeydləri çıxarın və silmə metodunu yerinə yetirin və ya sadəcə məhv etmə metodundan istifadə edin. Qeydi tapmaq və silmək üçün aşağıdakı əmrləri yerinə yetirmək kifayətdir:
$student = Students::find(1);
$student->delete();
Bir qeydi və çoxlu qeydləri silmək üçün əmrlər yerinə yetirilir:
Students::destroy(1);
Students::destroy(1, 2, 3);
Nəzərə alın ki, məhvetmə parametrləri hər hansı verilənlər bazası sütununu qəbul edə bilən silmə metodundan fərqli olaraq yalnız əsas açarlardır.
10-cu səviyyədən yuxarı olan bütün tələbələri tapmaq və silmək.
Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
Coveware by Veeam kiber qəsb hallarına cavab xidmətləri göstərməyə davam edəcək. Coveware məhkəmə və remediasiya imkanları təklif edəcək...
Proqnozlaşdırılan texniki xidmət zavodun idarə edilməsinə innovativ və proaktiv yanaşma ilə neft və qaz sektorunda inqilab edir.…
Böyük Britaniyanın CMA süni intellekt bazarında Big Tech-in davranışı ilə bağlı xəbərdarlıq edib. Orada…
Avropa İttifaqı tərəfindən binaların enerji səmərəliliyini artırmaq üçün tərtib edilən "Yaşıl Evlər" Fərmanı qanunvericilik prosesini yekunlaşdırdı ...