членовите

Што е Laravel Eloquent, како да се користи, упатство со примери

Рамката на Laravel PHP вклучува Eloquent Object Relational Mapper (ORM), која обезбедува исклучително лесен начин за комуникација со базата на податоци. 

Laravel и Eloquent помагаат да се забрза развојот на апликации и платформа, обезбедувајќи соодветно решение за повеќето проблеми. Барањата се решаваат со побрз развој, како и со добро организиран, повторно употреблив, одржуван и скалабилен код. 

Како функционира елоквентот

Програмерите можат да работат во Eloquent со повеќе бази на податоци ефикасно користејќи ActiveMethod имплементација. Тоа е архитектонски модел каде што моделот креиран во структурата Model-View-Controller (MVC) одговара на табела во базата на податоци. Предноста е во тоа што моделите извршуваат заеднички операции со бази на податоци без да кодираат долги SQL барања. Шаблоните ви дозволуваат да барате податоци во табелите и да вметнете нови записи во табелите. Процесот на синхронизирање на повеќе бази на податоци што работат на различни системи е поедноставен. Не треба да пишувате SQL прашања. Се што треба да направите е defiЗавршете ги табелите со базата на податоци и односите меѓу нив, а Eloquent ќе го заврши остатокот од работата.

Подготовка на Ларавел

Задолжително е да се цени корисноста на Eloquent ORM и да се разбере екосистемот. Чекори за да започнете:

  1. Инсталирајте го Laravel од getcomposer.org, за да го направите ова, следете ги упатствата овде
  2. Креирај migration користејќи ја конзолата Artisan
  3. Креирајте шаблони eloquent
  4. трчај јас seed на базата на податоци

Artisan Console е името на интерфејсот на командната линија вклучена во Laravel. Обезбедува збир на корисни команди за користење додека ја развивате вашата апликација. Воден е од моќната компонента Symfony Console.

За да видите список со сите достапни команди на Artisan, можете да ја користите командата листа:

php artisan list

Сите команди доаѓаат со концизен опис на неговите аргументи и опции. Ова е прикажано на екранот „помош“. За да прикажете екран за помош, едноставно претходете на името на командата со „помош“ како што е прикажано:

php artisan help migrate

Migration

Миграцијата е процес на управување со базата на податоци со пишување PHP наместо тоа SQL. Обезбедува начин за додавање контрола на верзијата во базата на податоци. 

За да креирате миграција, само извршете ја следнава команда:

php artisan make:migration create_student_records

Ова ја креира датотеката за миграција. Во вашиот уредувач на текст, отворете ја датотеката што штотуку ја создадовте во папката 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');
    }
}

Кодот е класа со исто име 'create student records', и има два методи: нагоре и надолу. Нагоре методот треба да направи промени во базата на податоци; па секогаш кога ќе ја мигрирате вашата база на податоци, секој код во методот нагоре ќе се изврши. Од друга страна, методот надолу треба да ги врати назад тие промени во базата на податоци; па секогаш кога ќе ја стартувате rollback на migration, методот надолу треба да го поништи она што го направи методот нагоре. Внатре во методот up тука е градител на шеми што се користи за креирање и манипулирање со табелите. Што ќе се случи ако откажете некои од вашите миграции? Сè што треба да направите е да ја имплементирате следнава команда:

php artisan migrate:rollback

И последниот ќе го собере migration кој е имплементиран. Исто така, можете целосно да ја вратите базата на податоци со извршување:

php artisan migrate:reset

Ова ќе ги откаже сите ваши миграции.

Defiција на модели на Eloquent

Откако ќе заврши миграцијата на базата на податоци, следниот процес е seedingEloquent влегува во игра бидејќи на seeding вметнува записи во нашата база на податоци. Значи, ќе треба да ги креирате шаблоните пред да ја пополните базата на податоци. Секоја табела со база на податоци има соодветен модел кој се користи за интеракција со таа табела. Шаблоните ви дозволуваат да ги барате податоците во вашите табели, како и да вметнете нови записи во табелата. Најлесен начин да се инстанцира моделот е да се користи следнава команда:

php artisan make:model Student
Пример за шаблон е прикажан подолу Student, што може да се користи за преземање и складирање информации од табелата со база на податоци на нашите студенти:
<?php
namespace App;
use IlluminateDatabaseEloquentModel;

class Student extends Model
{
    //
}

Кога генерирате модел и во исто време сакате да генерирате миграција на базата на податоци, можете да ја користите опцијата –migration o -m:

php artisan make:model Student --migration

php artisan make:model Student -m

Сејачи

Севкупните сејдери се специјален сет на класи кои ни овозможуваат да ја пополнуваме нашата база на податоци одново и одново со точно истите податоци. Ја имплементираме следнава команда:

php artisan make:seeder StudentsRecordSeeder

Во уредувачот на текст, под папката семиња, отворете ја новосоздадената датотека со име на датотека: StudentsRecordSeeder.php. Како што можете да видите, ова е само многу едноставна класа со единствен метод наречен run().

<?php
use IlluminateDatabaseSeeder;

class StudentsRecordSeeder extends Seeder
{
    /**
    * Run the database seeds
    * @return void
    */

    public function run()
    {
        //
    }
}

Кодот е само обвивка околу командната класа на конзолата, специјално изградена за да помогне во задачата на seeding. Уредете го кодот и потоа зачувајте го.

Билтен за иновации
Не пропуштајте ги најважните вести за иновациите. Пријавете се за да ги добивате по е-пошта.
public function run()
{
    echo 'Seeding!';
}

И одење до терминалот:

php artisan db:seed --class=StudentsRecordSeeder

Сега можете да ја пополните табелата со некои записи и да извршите:

php artisan db:seed --class=class=StudentsRecordSeeder

Овде можете да продолжите да бришете, додавате, менувате записи во DB, а потоа да ги обновувате со едноставна команда.

CRUD со Laravel Eloquent

Операциите на CRUD со Laravel Eloquent објектно-релациски мапер (ORM) им олеснуваат на развивачите на Laravel да работат со повеќе бази на податоци. Врши операции за креирање, читање, ажурирање и бришење (CRUD) и мапира модели на објекти во табели на базата на податоци. Се справува со сите интеракции на базата на податоци потребни за операциите на CRUD.

Создавање на записи

Можете да го користите методот ::create за да вметнете нов запис во базата на податоци.

student_record::create(array(
    'first_name' => 'John',
    'last_name'  => 'Doe',
    'student_rank' => 1
));

Покрај едноставниот метод на креирање прикажан погоре, можете исто така да креирате нов објект и да му дадете различни атрибути. Потоа, можете да ја повикате функцијата save() и да го извршите кодот. Методи како firstOrCreate() о firstOrNew() се други опции за креирање записи. Овие ќе ви овозможат да најдете студент со одредени атрибути; ако тој студент не е пронајден, или ќе го креирате во базата на податоци или ќе инстанцирате нова инстанца.

Читање записи

Користејќи го Eloquent ORM, можете да најдете записи во вашата база на податоци. Прашањата се едноставно конструирани и нудат непречен тек. За да креирате изјави:where, ќе ги користите методите get() И first(). Методот first() ќе врати само еден рекорд, додека методот get() ќе врати низа записи што може да се вртат. Исто така, методот find() може да се користи со низа примарни клучеви, кои ќе вратат збирка соодветни записи. Еве неколку примери:

$student = Students::all();

Овој код ги добива сите студенти. Додека следниов код наоѓа одреден ученик по ID:

$student = Студенти::find(1);

Исто така, како што е прикажано подолу, кодот опишува пребарување на студент врз основа на специфичен атрибут.

$JohnDoe = Students::where('name', '=', 'John Doe')->first();

За методот get(), овој код покажува како да се најде студент со ниво над 5.

$rankStudents = Student::where('student_rank', '>', 5)->get();
Снимајте ажурирање

Ажурирањето на записите со користење на Eloquent е исто толку лесно. За да ажурирате запис, само пронајдете го записот што сакате да го ажурирате, уредете ги атрибутите и зачувајте. На пример, за да го промените нивото на оценка на ученикот на Џон До на 5, прво пронајдете го ученикот и потоа извршете го методот за зачувување.

$JohnDoe = Bear::where('name', '=', 'John Doe')->first();
$JohnDoe->danger_level = 5;
$JohnDoe->save();

Методот за зачувување може да се користи и за ажурирање на модели кои веќе постојат во базата на податоци.

Избришете ги записите

Елоквент може да се пофали со својот лесен процес на ажурирање на записите, но ја има истата приказна со бришењето. Постојат две опции: повлекување записи и извршување на методот за бришење или едноставно користење на методот на уништување. За да пронајдете и избришете запис, едноставно извршете ги следните команди:

$student = Students::find(1);
$student->delete();

За да избришете запис и повеќе записи, се извршуваат командите:

Students::destroy(1);
Students::destroy(1, 2, 3);

Забележете дека параметрите на уништување се само примарни клучеви за разлика од методот за бришење кој може да прифати која било колона на базата на податоци.

Да се ​​најдат и избришат сите ученици над ниво 10.

Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
Билтен за иновации
Не пропуштајте ги најважните вести за иновациите. Пријавете се за да ги добивате по е-пошта.

Последни написи

Veeam ја има најсеопфатната поддршка за ransomware, од заштита до одговор и обновување

Coveware од Veeam ќе продолжи да обезбедува услуги за одговор на инциденти на сајбер изнуда. Coveware ќе понуди форензика и способности за санација…

Април 23 2024

Зелена и дигитална револуција: Како предвидливото одржување ја трансформира индустријата за нафта и гас

Предвидливото одржување го револуционизира секторот за нафта и гас, со иновативен и проактивен пристап кон управувањето со постројките.…

Април 22 2024

Антимонополскиот регулатор на Обединетото Кралство го покренува алармот на BigTech поради GenAI

Обединетото Кралство CMA издаде предупредување за однесувањето на Big Tech на пазарот на вештачка интелигенција. Таму…

Април 18 2024

Casa Green: енергетска револуција за одржлива иднина во Италија

Уредбата за „Case Green“, формулирана од Европската унија за подобрување на енергетската ефикасност на зградите, го заврши својот законодавен процес со…

Април 18 2024

Читајте иновации на вашиот јазик

Билтен за иновации
Не пропуштајте ги најважните вести за иновациите. Пријавете се за да ги добивате по е-пошта.

Следете нас