Laravel மற்றும் Eloquent ஆகியவை பயன்பாடு மற்றும் இயங்குதள மேம்பாட்டை விரைவுபடுத்த உதவுகின்றன, பெரும்பாலான பிரச்சனைகளுக்கு போதுமான தீர்வை வழங்குகிறது. தேவைகள் வேகமான மேம்பாடு மற்றும் நன்கு ஒழுங்கமைக்கப்பட்ட, மீண்டும் பயன்படுத்தக்கூடிய, பராமரிக்கக்கூடிய மற்றும் அளவிடக்கூடிய குறியீட்டுடன் தீர்க்கப்படுகின்றன.
டெவலப்பர்கள் வேலை செய்யலாம் Eloquent
பல தரவுத்தளங்களுடன் திறமையாக ஒரு ActiveMethod செயல்படுத்தலைப் பயன்படுத்துகிறது. மாடல்-வியூ-கண்ட்ரோலர் (எம்விசி) கட்டமைப்பில் உருவாக்கப்பட்ட மாதிரியானது தரவுத்தளத்தில் உள்ள அட்டவணைக்கு ஒத்திருக்கும் ஒரு கட்டடக்கலை வடிவமாகும். நீண்ட SQL வினவல்களை குறியீடாக்காமல் மாதிரிகள் பொதுவான தரவுத்தள செயல்பாடுகளைச் செய்வதே இதன் நன்மை. வார்ப்புருக்கள் அட்டவணையில் தரவை வினவவும், புதிய பதிவுகளை அட்டவணையில் செருகவும் உங்களை அனுமதிக்கின்றன. வெவ்வேறு கணினிகளில் இயங்கும் பல தரவுத்தளங்களை ஒத்திசைக்கும் செயல்முறை எளிமைப்படுத்தப்பட்டுள்ளது. நீங்கள் SQL வினவல்களை எழுத வேண்டியதில்லை. நீங்கள் செய்ய வேண்டியது எல்லாம் defiதரவுத்தள அட்டவணைகள் மற்றும் அவற்றுக்கிடையேயான உறவுகளை முடிக்கவும், மீதமுள்ள வேலைகளை எலோக்வென்ட் செய்யும்.
எலோக்வென்ட் ORM இன் பயன்பாட்டைப் பாராட்டுவதும், சுற்றுச்சூழல் அமைப்பைப் புரிந்துகொள்வதும் அவசியம். தொடங்குவதற்கான படிகள்:
migration
கன்சோலைப் பயன்படுத்தி Artisan
eloquent
seed
தரவுத்தளத்தின்Artisan Console
Laravel இல் சேர்க்கப்பட்டுள்ள கட்டளை வரி இடைமுகத்தின் பெயர். உங்கள் பயன்பாட்டை உருவாக்கும் போது பயன்படுத்த பயனுள்ள கட்டளைகளின் தொகுப்பை வழங்குகிறது. இது சக்திவாய்ந்த கூறுகளால் இயக்கப்படுகிறது Symfony Console
.
கிடைக்கக்கூடிய அனைத்து கைவினைஞர் கட்டளைகளின் பட்டியலைப் பார்க்க, நீங்கள் பட்டியல் கட்டளையைப் பயன்படுத்தலாம்:
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
இது உங்களின் அனைத்து இடம்பெயர்வுகளையும் ரத்து செய்யும்.
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
ஒட்டுமொத்த சீடர்கள் என்பது நமது தரவுத்தளத்தை சரியான தரவுகளுடன் மீண்டும் மீண்டும் விரிவுபடுத்த அனுமதிக்கும் சிறப்பு வகுப்புகளின் தொகுப்பாகும். பின்வரும் கட்டளையை நாங்கள் செயல்படுத்துகிறோம்:
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 இல் உள்ளீடுகளை நீக்குதல், சேர்த்தல், மாற்றுதல் ஆகியவற்றைத் தொடரலாம், பின்னர் அவற்றை ஒரு எளிய கட்டளை மூலம் மீட்டெடுக்கலாம்.
Laravel Eloquent object-relational mapper (ORM) உடனான CRUD செயல்பாடுகள் Laravel டெவலப்பர்கள் பல தரவுத்தளங்களுடன் வேலை செய்வதை எளிதாக்குகிறது. இது உருவாக்க, படிக்க, புதுப்பித்தல் மற்றும் நீக்குதல் (CRUD) செயல்பாடுகளை செய்கிறது மற்றும் தரவுத்தள அட்டவணைகளுக்கு பொருள் மாதிரிகளை வரைபடமாக்குகிறது. CRUD செயல்பாடுகளுக்கு தேவையான அனைத்து தரவுத்தள தொடர்புகளையும் கையாளுகிறது.
தரவுத்தளத்தில் புதிய பதிவைச் செருக ::create முறையைப் பயன்படுத்தலாம்.
student_record::create(array(
'first_name' => 'John',
'last_name' => 'Doe',
'student_rank' => 1
));
மேலே காட்டப்பட்டுள்ள எளிய உருவாக்கும் முறைக்கு கூடுதலாக, நீங்கள் ஒரு புதிய பொருளை உருவாக்கி அதற்கு வெவ்வேறு பண்புக்கூறுகளையும் கொடுக்கலாம். பின்னர், நீங்கள் சேவ்() செயல்பாட்டை அழைக்கலாம் மற்றும் குறியீட்டை இயக்கலாம். போன்ற முறைகள் firstOrCreate
() ஓ firstOrNew
() பதிவுகளை உருவாக்குவதற்கான பிற விருப்பங்கள். இவை சில பண்புகளுடன் ஒரு மாணவரைக் கண்டறிய உங்களை அனுமதிக்கும்; அந்த மாணவர் கண்டுபிடிக்கப்படவில்லை என்றால், நீங்கள் அதை தரவுத்தளத்தில் உருவாக்குவீர்கள் அல்லது ஒரு புதிய நிகழ்வை உடனடியாக உருவாக்குவீர்கள்.
Eloquent ORM ஐப் பயன்படுத்தி, உங்கள் தரவுத்தளத்தில் பதிவுகளைக் காணலாம். வினவல்கள் எளிமையாக கட்டமைக்கப்பட்டு ஒரு மென்மையான ஓட்டத்தை வழங்குகின்றன. அறிக்கைகளை உருவாக்க::where
, நீங்கள் முறைகளைப் பயன்படுத்துவீர்கள் get
() மற்றும் first
(). முறை first
() முறை ஒரு பதிவை மட்டுமே வழங்கும் get
() வளையக்கூடிய பதிவுகளின் வரிசையை வழங்கும். மேலும், முறை find
() முதன்மை விசைகளின் வரிசையுடன் பயன்படுத்தப்படலாம், இது பொருந்தும் பதிவுகளின் தொகுப்பை வழங்கும். இங்கே சில உதாரணங்கள்:
$student = Students::all();
இந்த குறியீடு அனைத்து மாணவர்களையும் பெறுகிறது. பின்வரும் குறியீடு ஒரு குறிப்பிட்ட மாணவரை ஐடி மூலம் கண்டுபிடிக்கும் போது:
$ மாணவர் = மாணவர்கள்:: கண்டுபிடி(1);
மேலும், கீழே காட்டப்பட்டுள்ளபடி, ஒரு குறிப்பிட்ட பண்புக்கூறின் அடிப்படையில் ஒரு மாணவரைத் தேடுவதை குறியீடு விவரிக்கிறது.
$JohnDoe = Students::where('name', '=', 'John Doe')->first();
get() முறைக்கு, 5க்கு மேல் உள்ள மாணவரை எப்படிக் கண்டுபிடிப்பது என்பதை இந்தக் குறியீடு காட்டுகிறது.
$rankStudents = Student::where('student_rank', '>', 5)->get();
எலோக்வென்ட்டைப் பயன்படுத்தி பதிவுகளைப் புதுப்பிப்பது மிகவும் எளிதானது. பதிவைப் புதுப்பிக்க, நீங்கள் புதுப்பிக்க விரும்பும் பதிவைக் கண்டுபிடித்து, பண்புகளைத் திருத்தி சேமிக்கவும். எடுத்துக்காட்டாக, ஜான் டோவின் மாணவரின் கிரேடு அளவை 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
லாராவெல், அதன் நேர்த்தியான தொடரியல் மற்றும் சக்திவாய்ந்த அம்சங்களுக்காக பிரபலமானது, மேலும் மட்டு கட்டிடக்கலைக்கு உறுதியான அடித்தளத்தை வழங்குகிறது. அங்கு…
சிஸ்கோ மற்றும் ஸ்ப்ளங்க் ஆகியவை வாடிக்கையாளர்களுக்கு எதிர்கால பாதுகாப்பு செயல்பாட்டு மையத்திற்கு (SOC) தங்கள் பயணத்தை விரைவுபடுத்த உதவுகின்றன…
கடந்த இரண்டு ஆண்டுகளாக செய்திகளில் ரான்சம்வேர் ஆதிக்கம் செலுத்தி வருகிறது. தாக்குதல்கள் என்பதை பெரும்பாலான மக்கள் நன்கு அறிவார்கள்...
ஆப்பிள் விஷன் ப்ரோ கமர்ஷியல் வியூவரைப் பயன்படுத்தி கண்சிகிச்சை அறுவை சிகிச்சை கேடேனியா பாலிக்ளினிக்கில் செய்யப்பட்டது.
வண்ணம் தீட்டுவதன் மூலம் சிறந்த மோட்டார் திறன்களை வளர்ப்பது, எழுதுவது போன்ற சிக்கலான திறன்களுக்கு குழந்தைகளை தயார்படுத்துகிறது. வண்ணம் தீட்ட…
கடற்படைத் துறை ஒரு உண்மையான உலகளாவிய பொருளாதார சக்தியாகும், இது 150 பில்லியன் சந்தையை நோக்கி பயணித்துள்ளது...
கடந்த திங்கட்கிழமை, பைனான்சியல் டைம்ஸ் OpenAI உடன் ஒரு ஒப்பந்தத்தை அறிவித்தது. FT அதன் உலகத் தரம் வாய்ந்த பத்திரிகைக்கு உரிமம் அளிக்கிறது…
மில்லியன் கணக்கான மக்கள் ஸ்ட்ரீமிங் சேவைகளுக்கு பணம் செலுத்துகிறார்கள், மாதாந்திர சந்தா கட்டணத்தை செலுத்துகிறார்கள். நீங்கள் என்பது பொதுவான கருத்து...