Laravel og Eloquent hjálpa til við að flýta fyrir þróun forrita og vettvangs og veita fullnægjandi lausn á flestum vandamálum. Tekið er á kröfum með hraðari þróun, sem og vel skipulögðum, endurnýtanlegum, viðhaldanlegum og skalanlegum kóða.
Hönnuðir geta unnið í Eloquent
með mörgum gagnagrunnum á skilvirkan hátt með því að nota ActiveMethod útfærslu. Það er byggingarmynstur þar sem líkanið sem er búið til í Model-View-Controller (MVC) uppbyggingu samsvarar töflu í gagnagrunninum. Kosturinn er sá að líkönin framkvæma algengar gagnagrunnsaðgerðir án þess að kóða langar SQL fyrirspurnir. Sniðmát gerir þér kleift að spyrjast fyrir um gögn í töflum og setja nýjar færslur inn í töflur. Ferlið við að samstilla marga gagnagrunna sem keyra á mismunandi kerfum er einfaldað. Þú þarft ekki að skrifa SQL fyrirspurnir. Allt sem þú þarft að gera er defiLjúktu við gagnagrunnstöflurnar og tengslin á milli þeirra og Eloquent mun sjá um restina af vinnunni.
Nauðsynlegt er að meta gagnsemi Eloquent ORM og skilja vistkerfið. Skref til að byrja:
migration
með því að nota stjórnborðið Artisan
eloquent
seed
gagnagrunnsinsArtisan Console
er nafnið á skipanalínuviðmótinu sem fylgir Laravel. Veitir safn af gagnlegum skipunum til að nota meðan þú þróar forritið þitt. Það er knúið áfram af öfluga íhlutnum Symfony Console
.
Til að sjá lista yfir allar tiltækar Artisan skipanir geturðu notað listaskipunina:
php artisan list
Öllum skipunum fylgir hnitmiðuð lýsing á rökum þess og valkostum. Þetta er sýnt á „hjálp“ skjá. Til að sýna hjálparskjá skaltu einfaldlega fara á undan skipanafninu með „hjálp“ eins og sýnt er:
php artisan help migrate
Migration
Flutningur er gagnagrunnsstjórnunarferli með því að skrifa PHP í staðinn SQL
. Veitir leið til að bæta útgáfustýringu við gagnagrunninn.
Til að búa til flutning skaltu bara keyra eftirfarandi skipun:
php artisan make:migration create_student_records
Þetta býr til flutningsskrána. Í textaritlinum þínum skaltu opna skrána sem þú bjóst til í möppunni 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');
}
}
Kóðinn er flokkur með sama nafni 'create student records
', og hefur tvær aðferðir: upp og niður. Upp aðferðin ætti að gera breytingar á gagnagrunninum; þannig að alltaf þegar þú flytur gagnagrunninn þinn verður hvaða kóða sem er í uppaðferðinni keyrður. Á hinn bóginn ætti niðuraðferðin að draga þessar gagnagrunnsbreytingar til baka; svo alltaf þegar þú keyrir rollback
á migration
, niður aðferðin ætti að afturkalla það sem upp aðferðin gerði. Inni í aðferðinni up
það er skemasmiðurinn sem notaður er til að búa til og vinna með töflurnar. Hvað gerist ef þú hættir við sumar flutningana þína? Allt sem þú þarft að gera er að útfæra eftirfarandi skipun:
php artisan migrate:rollback
Og hann mun safna þeim síðasta migration
sem komið hefur til framkvæmda. Einnig geturðu endurheimt gagnagrunninn algjörlega með því að keyra:
php artisan migrate:reset
Þetta mun hætta við alla flutninga þína.
Eloquent
Eftir að flutningi gagnagrunnsins er lokið er næsta ferli seeding
. Eloquent
kemur við sögu síðan seeding
er að setja gögn inn í gagnagrunninn okkar. Svo þú þarft að búa til sniðmátin áður en þú fyllir út gagnagrunninn. Hver gagnagrunnstafla hefur samsvarandi líkan sem er notað til að hafa samskipti við þá töflu. Sniðmát gerir þér kleift að spyrjast fyrir um gögnin í töflunum þínum, auk þess að setja nýjar færslur inn í töfluna. Auðveldasta leiðin til að stofna líkanið er að nota eftirfarandi skipun:
php artisan make:model Student
Dæmi um sniðmát er sýnt hér að neðan Student
, sem hægt er að nota til að sækja og geyma upplýsingar úr gagnagrunnstöflu nemenda okkar:
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class Student extends Model
{
//
}
Þegar þú býrð til líkan og á sama tíma vilt þú búa til gagnagrunnsflutning geturðu notað valkostinn –migration
o -m
:
php artisan make:model Student --migration
php artisan make:model Student -m
Heildarsáendur eru sérstakt sett af flokkum sem gera okkur kleift að fylla gagnagrunninn okkar aftur og aftur með nákvæmlega sömu gögnunum. Við innleiðum eftirfarandi skipun:
php artisan make:seeder StudentsRecordSeeder
Í textaritlinum, undir fræmöppunni, opnaðu nýstofnaða skrá með skráarnafni: StudentsRecordSeeder.php
. Eins og þú sérð er þetta bara mjög einfaldur flokkur með einni aðferð sem kallast run
,
<?php
use IlluminateDatabaseSeeder;
class StudentsRecordSeeder extends Seeder
{
/**
* Run the database seeds
* @return void
*/
public function run()
{
//
}
}
Kóðinn er bara umbúðir utan um stjórnborðsstjórnunarflokk, sérstaklega smíðaður til að hjálpa við verkefnið seeding
. Breyttu kóðanum og vistaðu hann síðan.
public function run()
{
echo 'Seeding!';
}
Og að fara á flugstöðina:
php artisan db:seed --class=StudentsRecordSeeder
Nú geturðu fyllt töfluna með nokkrum færslum og keyrt:
php artisan db:seed --class=class=StudentsRecordSeeder
Hér getur þú haldið áfram að eyða, bæta við, breyta færslum í DB og endurheimta þær síðan með einfaldri skipun.
CRUD aðgerðir með Laravel Eloquent Object- Relational Mapper (ORM) auðvelda Laravel verktaki að vinna með marga gagnagrunna. Það framkvæmir aðgerðir til að búa til, lesa, uppfæra og eyða (CRUD) og kortleggja hlutlíkön í gagnagrunnstöflur. Tekur við öllum gagnasafnssamskiptum sem krafist er fyrir CRUD aðgerðir.
Þú getur notað ::create aðferðina til að setja nýja færslu inn í gagnagrunninn.
student_record::create(array(
'first_name' => 'John',
'last_name' => 'Doe',
'student_rank' => 1
));
Til viðbótar við einföldu sköpunaraðferðina sem sýnd er hér að ofan geturðu líka búið til nýjan hlut og gefið honum mismunandi eiginleika. Síðan geturðu hringt í save() aðgerðina og keyrt kóðann. Aðferðir eins og firstOrCreate
() eða firstOrNew
() eru aðrir möguleikar til að búa til færslur. Þetta mun leyfa þér að finna nemanda með ákveðna eiginleika; ef þessi nemandi finnst ekki muntu búa hann til í gagnagrunninum eða setja upp nýtt tilvik.
Með því að nota Eloquent ORM geturðu fundið skrár í gagnagrunninum þínum. Fyrirspurnirnar eru einfaldlega smíðaðar og bjóða upp á slétt flæði. Til að búa til yfirlýsingar::where
, þú munt nota aðferðirnar get
() Og first
(). Aðferðin first
() mun aðeins skila einni skrá, en aðferðin get
() mun skila lykkjanlegu fylki af skrám. Einnig aðferðin find
() er hægt að nota með fjölda aðallykla, sem mun skila safni af samsvarandi skrám. Hér eru nokkur dæmi:
$student = Students::all();
Þessi kóða fær alla nemendur. Þó að eftirfarandi kóði finnur tiltekinn nemanda með auðkenni:
$student = Nemendur::finna(1);
Einnig, eins og sýnt er hér að neðan, lýsir kóðinn leit að nemanda út frá tilteknum eiginleikum.
$JohnDoe = Students::where('name', '=', 'John Doe')->first();
Fyrir get() aðferðina sýnir þessi kóði hvernig á að finna nemanda með stig yfir 5.
$rankStudents = Student::where('student_rank', '>', 5)->get();
Það er jafn einfalt að uppfæra færslur með Eloquent. Til að uppfæra færslu skaltu bara finna færsluna sem þú vilt uppfæra, breyta eigindunum og vista. Til dæmis, til að breyta einkunnastigi nemandans John Doe í 5 skaltu fyrst finna nemandann og framkvæma síðan vistunaraðferðina.
$JohnDoe = Bear::where('name', '=', 'John Doe')->first();
$JohnDoe->danger_level = 5;
$JohnDoe->save();
Einnig er hægt að nota vistunaraðferðina til að uppfæra líkön sem þegar eru til í gagnagrunninum.
Eloquent státar af auðveldu uppfærsluferlinu, en það hefur sömu sögu með eyðingu. Það eru tveir valkostir: draga út færslur og framkvæma eyðingaraðferðina, eða einfaldlega nota eyðileggingaraðferðina. Til að finna og eyða færslu skaltu einfaldlega keyra eftirfarandi skipanir:
$student = Students::find(1);
$student->delete();
Til að eyða færslu og mörgum færslum eru skipanirnar keyrðar:
Students::destroy(1);
Students::destroy(1, 2, 3);
Athugaðu að færibreytur eyðileggja eru aðeins aðallyklar ólíkt eyðingaraðferðinni sem getur samþykkt hvaða gagnagrunnsdálka sem er.
Til að finna og eyða öllum nemendum fyrir ofan 10. stig.
Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
Að þróa fínhreyfingar með litun undirbýr börn fyrir flóknari færni eins og að skrifa. Að lita…
Flotageirinn er sannkallað alþjóðlegt efnahagsveldi sem hefur siglt í átt að 150 milljarða markaði...
Síðasta mánudag tilkynnti Financial Times um samning við OpenAI. FT leyfir heimsklassa blaðamennsku…
Milljónir manna borga fyrir streymisþjónustu og greiða mánaðarlega áskriftargjöld. Það er almenn skoðun að þú…