Laravel და Eloquent ხელს უწყობს აპლიკაციისა და პლატფორმის შემუშავების დაჩქარებას, რაც უზრუნველყოფს ადეკვატურ გადაწყვეტას პრობლემების უმეტესობისთვის. მოთხოვნები დაკმაყოფილებულია უფრო სწრაფი განვითარებით, ასევე კარგად ორგანიზებული, ხელახლა გამოყენებადი, შენარჩუნებული და მასშტაბირებადი კოდით.
დეველოპერებს შეუძლიათ მუშაობა Eloquent
მრავალი მონაცემთა ბაზებით ეფექტური ActiveMethod განხორციელების გამოყენებით. ეს არის არქიტექტურული ნიმუში, სადაც მოდელი-View-Controller (MVC) სტრუქტურაში შექმნილი მოდელი შეესაბამება მონაცემთა ბაზაში არსებულ ცხრილს. უპირატესობა ის არის, რომ მოდელები ასრულებენ მონაცემთა ბაზის საერთო ოპერაციებს გრძელი SQL მოთხოვნების კოდირების გარეშე. შაბლონები საშუალებას გაძლევთ მოიძიოთ მონაცემები ცხრილებში და ჩადოთ ახალი ჩანაწერები ცხრილებში. სხვადასხვა სისტემაზე გაშვებული მრავალი მონაცემთა ბაზის სინქრონიზაციის პროცესი გამარტივებულია. თქვენ არ გჭირდებათ SQL მოთხოვნების დაწერა. ყველაფერი რაც თქვენ უნდა გააკეთოთ არის defiდაასრულეთ მონაცემთა ბაზის ცხრილები და მათ შორის ურთიერთობა და Eloquent შეასრულებს დანარჩენ სამუშაოს.
Eloquent ORM-ის სარგებლიანობის დაფასება და ეკოსისტემის გაგება აუცილებელია. ნაბიჯები დასაწყებად:
migration
კონსოლის გამოყენებით Artisan
eloquent
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
და აქვს ორი მეთოდი: ზევით და ქვევით. up მეთოდმა უნდა შეიტანოს ცვლილებები მონაცემთა ბაზაში; ასე რომ, როდესაც თქვენ მიგრირებთ თქვენს მონაცემთა ბაზას, ნებისმიერი კოდი up მეთოდით შესრულდება. მეორეს მხრივ, ქვემოთ მეთოდმა უნდა დააბრუნოს მონაცემთა ბაზის ცვლილებები; ასე რომ, როდესაც თქვენ აწარმოებთ rollback
საქართველოს migration
, ქვემოთ მეთოდმა უნდა გააუქმოს ის, რაც გააკეთა up მეთოდმა. მეთოდის შიგნით up
არსებობს სქემის შემქმნელი, რომელიც გამოიყენება ცხრილების შესაქმნელად და მანიპულირებისთვის. რა მოხდება, თუ გააუქმებთ თქვენს ზოგიერთ მიგრაციას? ყველაფერი რაც თქვენ უნდა გააკეთოთ არის შემდეგი ბრძანების განხორციელება:
php artisan migrate:rollback
და ის შეაგროვებს უკანასკნელს migration
რომელიც განხორციელდა. ასევე, თქვენ შეგიძლიათ სრულად აღადგინოთ მონაცემთა ბაზა გაშვებით:
php artisan migrate:reset
ეს გააუქმებს თქვენს ყველა მიგრაციას.
Eloquent
მონაცემთა ბაზის მიგრაციის დასრულების შემდეგ, შემდეგი პროცესია seeding
. Eloquent
თამაშში შედის მას შემდეგ, რაც 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
საერთო seders არის კლასების სპეციალური ნაკრები, რომელიც საშუალებას გვაძლევს შევავსოთ ჩვენი მონაცემთა ბაზა ისევ და ისევ ზუსტად იგივე მონაცემებით. ჩვენ ვახორციელებთ შემდეგ ბრძანებას:
php artisan make:seeder StudentsRecordSeeder
ტექსტურ რედაქტორში, seeds საქაღალდის ქვეშ, გახსენით ახლად შექმნილი ფაილი ფაილის სახელით: 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 ობიექტურ-რელაციური რუქებით (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();
შენახვის მეთოდის გამოყენება ასევე შესაძლებელია მონაცემთა ბაზაში უკვე არსებული მოდელების განახლებისთვის.
Eloquent ამაყობს მისი მარტივი ჩანაწერის განახლების პროცესით, მაგრამ მას აქვს იგივე ამბავი წაშლის შესახებ. არსებობს ორი ვარიანტი: ჩანაწერების ამოღება და წაშლის მეთოდის შესრულება, ან უბრალოდ განადგურების მეთოდის გამოყენება. ჩანაწერის მოსაძებნად და წასაშლელად, უბრალოდ შეასრულეთ შემდეგი ბრძანებები:
$student = Students::find(1);
$student->delete();
ჩანაწერის და მრავალი ჩანაწერის წასაშლელად, აწარმოებს ბრძანებებს:
Students::destroy(1);
Students::destroy(1, 2, 3);
გაითვალისწინეთ, რომ განადგურების პარამეტრები მხოლოდ პირველადი გასაღებებია, წაშლის მეთოდისგან განსხვავებით, რომელსაც შეუძლია მონაცემთა ბაზის ნებისმიერი სვეტის მიღება.
მე-10 დონის ზემოთ ყველა მოსწავლის პოვნა და წაშლა.
Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
ნებისმიერი ბიზნეს ოპერაცია აწარმოებს უამრავ მონაცემს, თუნდაც სხვადასხვა ფორმით. ხელით შეიყვანეთ ეს მონაცემები Excel ფურცლიდან…
კომპანიის ელ.ფოსტის კომპრომისი ორჯერ გაიზარდა 2024 წლის პირველ სამ თვეში, ბოლო კვარტალთან შედარებით…
ინტერფეისის სეგრეგაციის პრინციპი არის ობიექტზე ორიენტირებული დიზაინის ხუთი მყარი პრინციპიდან ერთ-ერთი. კლასს უნდა ჰქონდეს…
Microsoft Excel არის მონაცემთა ანალიზის საცნობარო ინსტრუმენტი, რადგან ის გთავაზობთ მრავალ ფუნქციას მონაცემთა ნაკრების ორგანიზებისთვის,…
Walliance, SIM და პლატფორმა ევროპის ლიდერებს შორის უძრავი ქონების Crowdfunding-ის სფეროში 2017 წლიდან, აცხადებს დასრულებას…
Filament არის "აჩქარებული" Laravel განვითარების ჩარჩო, რომელიც უზრუნველყოფს რამდენიმე სრული დასტას კომპონენტს. იგი შექმნილია პროცესის გასამარტივებლად…
„მე უნდა დავბრუნდე, რომ დავასრულო ჩემი ევოლუცია: მე კომპიუტერში საკუთარ თავს პროექტირებას მოვახდენ და სუფთა ენერგია გავხდები. მას შემდეგ რაც დასახლდა…
Google DeepMind წარმოგიდგენთ ხელოვნური ინტელექტის მოდელის გაუმჯობესებულ ვერსიას. ახალი გაუმჯობესებული მოდელი უზრუნველყოფს არა მხოლოდ…