Mae Laravel ac Eloquent yn helpu i gyflymu datblygiad cymwysiadau a llwyfannau, gan ddarparu ateb digonol i'r mwyafrif o broblemau. Rhoddir sylw i ofynion gyda datblygiad cyflymach, yn ogystal â chod trefnus, y gellir ei ailddefnyddio, y gellir ei gynnal a'i raddio.
Gall datblygwyr weithio i mewn Eloquent
gyda chronfeydd data lluosog yn effeithlon gan ddefnyddio gweithrediad ActiveMethod. Mae'n batrwm pensaernïol lle mae'r model a grëwyd yn strwythur Model-View-Controller (MVC) yn cyfateb i dabl yn y gronfa ddata. Y fantais yw bod y modelau'n perfformio gweithrediadau cronfa ddata cyffredin heb godio ymholiadau SQL hir. Mae templedi yn eich galluogi i ymholi data mewn tablau a mewnosod cofnodion newydd mewn tablau. Mae'r broses o gydamseru cronfeydd data lluosog sy'n rhedeg ar systemau gwahanol yn cael ei symleiddio. Nid oes angen i chi ysgrifennu ymholiadau SQL. Y cyfan sy'n rhaid i chi ei wneud yw defiGorffen y tablau cronfa ddata a'r berthynas rhyngddynt, a bydd Eloquent yn gwneud gweddill y gwaith.
Mae gwerthfawrogi defnyddioldeb ORM Eloquent, a deall yr ecosystem yn hanfodol. Camau i gychwyn arni:
migration
defnyddio'r consol Artisan
eloquent
seed
o'r gronfa ddataArtisan Console
yw enw'r rhyngwyneb llinell orchymyn sydd wedi'i gynnwys yn Laravel. Yn darparu set o orchmynion defnyddiol i'w defnyddio wrth ddatblygu'ch cais. Mae'n cael ei yrru gan y gydran pwerus Symfony Console
.
I weld rhestr o'r holl orchmynion Artisan sydd ar gael, gallwch ddefnyddio'r gorchymyn rhestr:
php artisan list
Daw pob gorchymyn gyda disgrifiad cryno o'i ddadleuon a'i opsiynau. Dangosir hyn mewn sgrin "help". I arddangos sgrin gymorth, rhowch “help” o flaen yr enw gorchymyn fel y dangosir:
php artisan help migrate
Migration
Mae mudo yn broses rheoli cronfa ddata trwy ysgrifennu PHP yn lle hynny SQL
. Yn darparu ffordd i ychwanegu rheolaeth fersiwn i'r gronfa ddata.
I greu mudo, rhedwch y gorchymyn canlynol:
php artisan make:migration create_student_records
Mae hyn yn creu'r ffeil mudo. Yn eich golygydd testun, agorwch y ffeil rydych chi newydd ei chreu yn y ffolder 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');
}
}
Mae'r cod yn ddosbarth gyda'r un enw'create student records
', ac mae ganddo ddau ddull: i fyny ac i lawr. Dylai'r dull i fyny wneud newidiadau i'r gronfa ddata; felly pryd bynnag y byddwch yn mudo eich cronfa ddata, bydd unrhyw god yn y dull i fyny yn cael ei weithredu. Ar y llaw arall, dylai'r dull i lawr gyflwyno'r newidiadau cronfa ddata hynny yn ôl; felly pryd bynnag y byddwch yn rhedeg y rollback
o migration
, dylai'r dull i lawr ddadwneud yr hyn a wnaeth y dull i fyny. Y tu mewn i'r dull up
yno mae'r adeiladwr sgema a ddefnyddir i greu a thrin y byrddau. Beth fydd yn digwydd os byddwch yn canslo rhai o'ch mudo? Y cyfan sy'n rhaid i chi ei wneud yw gweithredu'r gorchymyn canlynol:
php artisan migrate:rollback
A bydd yn casglu'r olaf migration
sydd wedi cael ei rhoi ar waith. Hefyd, gallwch chi adfer y gronfa ddata yn llawn trwy redeg:
php artisan migrate:reset
Bydd hyn yn canslo eich holl fudiadau.
Eloquent
Ar ôl i'r mudo cronfa ddata gael ei gwblhau, y broses nesaf yw'r seeding
. Eloquent
yn dod i chwarae ers y seeding
yn mewnosod cofnodion yn ein cronfa ddata. Felly bydd angen i chi greu'r templedi cyn llenwi'r gronfa ddata. Mae gan bob tabl cronfa ddata fodel cyfatebol a ddefnyddir i ryngweithio â'r tabl hwnnw. Mae templedi yn caniatáu ichi gwestiynu'r data yn eich tablau, yn ogystal â mewnosod cofnodion newydd yn y tabl. Y ffordd hawsaf i gyflymu'r model yw defnyddio'r gorchymyn canlynol:
php artisan make:model Student
Dangosir enghraifft o dempled isod Student
, y gellir ei ddefnyddio i adalw a storio gwybodaeth o dabl cronfa ddata ein myfyrwyr:
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class Student extends Model
{
//
}
Pan fyddwch chi'n cynhyrchu model ac ar yr un pryd rydych chi am gynhyrchu mudo cronfa ddata, gallwch chi ddefnyddio'r opsiwn –migration
o -m
:
php artisan make:model Student --migration
php artisan make:model Student -m
Mae hadwyr cyffredinol yn set arbennig o ddosbarthiadau sy'n ein galluogi i lenwi ein cronfa ddata dro ar ôl tro gyda'r un data yn union. Rydym yn gweithredu'r gorchymyn canlynol:
php artisan make:seeder StudentsRecordSeeder
Yn y golygydd testun, o dan y ffolder hadau, agorwch y ffeil sydd newydd ei chreu gydag enw ffeil: StudentsRecordSeeder.php
. Fel y gwelwch, dosbarth syml iawn yw hwn gydag un dull o'r enw run
,
<?php
use IlluminateDatabaseSeeder;
class StudentsRecordSeeder extends Seeder
{
/**
* Run the database seeds
* @return void
*/
public function run()
{
//
}
}
Dim ond deunydd lapio o amgylch dosbarth gorchymyn consol yw'r cod, wedi'i adeiladu'n benodol i helpu gyda'r dasg o seeding
. Golygu'r cod ac yna ei gadw.
public function run()
{
echo 'Seeding!';
}
Ac yn mynd i'r derfynell:
php artisan db:seed --class=StudentsRecordSeeder
Nawr gallwch chi lenwi'r tabl gyda rhai cofnodion a rhedeg:
php artisan db:seed --class=class=StudentsRecordSeeder
Yma gallwch barhau i ddileu, ychwanegu, addasu cofnodion yn y DB, yna eu hadfer gyda gorchymyn syml.
Mae gweithrediadau CRUD gyda mapiwr gwrthrych-berthynol Laravel Eloquent (ORM) yn ei gwneud hi'n haws i ddatblygwyr Laravel weithio gyda chronfeydd data lluosog. Mae'n perfformio gweithrediadau creu, darllen, diweddaru a dileu (CRUD), ac yn mapio modelau gwrthrych i dablau cronfa ddata. Ymdrin â'r holl ryngweithiadau cronfa ddata sydd eu hangen ar gyfer gweithrediadau CRUD.
Gallwch ddefnyddio'r dull ::create i fewnosod cofnod newydd yn y gronfa ddata.
student_record::create(array(
'first_name' => 'John',
'last_name' => 'Doe',
'student_rank' => 1
));
Yn ogystal â'r dull creu syml a ddangosir uchod, gallwch hefyd greu gwrthrych newydd a rhoi gwahanol briodoleddau iddo. Yna, gallwch chi ffonio'r swyddogaeth arbed () a rhedeg y cod. Dulliau fel firstOrCreate
()o firstOrNew
() yn opsiynau eraill ar gyfer creu cofnodion. Bydd y rhain yn eich galluogi i ddod o hyd i fyfyriwr gyda nodweddion penodol; os na chanfyddir y myfyriwr hwnnw, byddwch yn ei greu yn y gronfa ddata neu'n cychwyn enghraifft newydd.
Gan ddefnyddio Eloquent ORM, gallwch ddod o hyd i gofnodion yn eich cronfa ddata. Mae ymholiadau'n cael eu hadeiladu'n syml ac yn cynnig llif llyfn. I greu datganiadau:where
, byddwch yn defnyddio'r dulliau get
() Ac first
(). Y dull first
() bydd ond yn dychwelyd un cofnod, tra bod y dull get
() yn dychwelyd amrywiaeth dolenadwy o gofnodion. Hefyd, y dull find
() gellir ei ddefnyddio gydag amrywiaeth o allweddi cynradd, a fydd yn dychwelyd casgliad o gofnodion cyfatebol. Dyma rai enghreifftiau:
$student = Students::all();
Mae'r cod hwn yn cael pob myfyriwr. Tra bod y cod canlynol yn dod o hyd i fyfyriwr penodol trwy ID:
$student = Myfyrwyr::darganfod(1);
Hefyd, fel y dangosir isod, mae'r cod yn disgrifio chwilio am fyfyriwr yn seiliedig ar briodwedd benodol.
$JohnDoe = Students::where('name', '=', 'John Doe')->first();
Ar gyfer y dull get(), mae'r cod hwn yn dangos sut i ddod o hyd i fyfyriwr â lefel uwch na 5.
$rankStudents = Student::where('student_rank', '>', 5)->get();
Mae diweddaru cofnodion gan ddefnyddio Eloquent yr un mor hawdd. I ddiweddaru cofnod, dewch o hyd i'r cofnod rydych chi am ei ddiweddaru, golygu'r priodoleddau a chadw. Er enghraifft, i newid lefel gradd myfyriwr John Doe i 5, darganfyddwch y myfyriwr yn gyntaf ac yna gweithredwch y dull arbed.
$JohnDoe = Bear::where('name', '=', 'John Doe')->first();
$JohnDoe->danger_level = 5;
$JohnDoe->save();
Gellir defnyddio'r dull arbed hefyd i ddiweddaru modelau sydd eisoes yn bodoli yn y gronfa ddata.
Mae huawdl yn ymffrostio yn ei phroses hawdd o ddiweddaru cofnodion, ond mae ganddo'r un stori â dileu. Mae dau opsiwn: tynnu allan cofnodion a gweithredu'r dull dileu, neu dim ond defnyddio'r dull dinistrio. I ddod o hyd i gofnod a'i ddileu, rhedwch y gorchmynion canlynol:
$student = Students::find(1);
$student->delete();
I ddileu cofnod a chofnodion lluosog, mae'r gorchmynion yn cael eu rhedeg:
Students::destroy(1);
Students::destroy(1, 2, 3);
Sylwch mai dim ond allweddi cynradd yw paramedrau dinistrio, yn wahanol i'r dull dileu a all dderbyn unrhyw golofn cronfa ddata.
Canfod a dileu pob myfyriwr uwchlaw lefel 10.
Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
Mae unrhyw weithrediad busnes yn cynhyrchu llawer o ddata, hyd yn oed mewn gwahanol ffurfiau. Rhowch y data hwn â llaw o ddalen Excel i…
Cynyddodd cyfaddawd e-byst cwmni fwy na dwbl yn ystod tri mis cyntaf 2024 o'i gymharu â chwarter olaf…
Mae egwyddor gwahanu rhyngwyneb yn un o'r pum egwyddor SOLID o ddylunio gwrthrych-ganolog. Dylai fod gan ddosbarth…
Microsoft Excel yw'r offeryn cyfeirio ar gyfer dadansoddi data, oherwydd mae'n cynnig llawer o nodweddion ar gyfer trefnu setiau data,…
Mae Walliance, SIM a llwyfan ymhlith yr arweinwyr yn Ewrop ym maes Cyllid Torfol Eiddo Tiriog ers 2017, yn cyhoeddi ei fod wedi'i gwblhau…
Mae ffilament yn fframwaith datblygu Laravel "cyflym", sy'n darparu sawl cydran pentwr llawn. Fe'i cynlluniwyd i symleiddio'r broses o…
«Rhaid i mi ddychwelyd i gwblhau fy esblygiad: byddaf yn taflu fy hun y tu mewn i'r cyfrifiadur ac yn dod yn egni pur. Wedi setlo yn…
Mae Google DeepMind yn cyflwyno fersiwn well o'i fodel deallusrwydd artiffisial. Mae'r model gwell newydd yn darparu nid yn unig…