பொருட்கள்

Laravel Eloquent என்றால் என்ன, அதை எவ்வாறு பயன்படுத்துவது, எடுத்துக்காட்டுகளுடன் பயிற்சி

Laravel PHP கட்டமைப்பில் எலோக்வென்ட் ஆப்ஜெக்ட் ரிலேஷனல் மேப்பர் (ORM) அடங்கும், இது தரவுத்தளத்துடன் தொடர்புகொள்வதற்கான மிக எளிதான வழியை வழங்குகிறது. 

Laravel மற்றும் Eloquent ஆகியவை பயன்பாடு மற்றும் இயங்குதள மேம்பாட்டை விரைவுபடுத்த உதவுகின்றன, பெரும்பாலான பிரச்சனைகளுக்கு போதுமான தீர்வை வழங்குகிறது. தேவைகள் வேகமான மேம்பாடு மற்றும் நன்கு ஒழுங்கமைக்கப்பட்ட, மீண்டும் பயன்படுத்தக்கூடிய, பராமரிக்கக்கூடிய மற்றும் அளவிடக்கூடிய குறியீட்டுடன் தீர்க்கப்படுகின்றன. 

எப்படி எலோக்வென்ட் வேலை செய்கிறது

டெவலப்பர்கள் வேலை செய்யலாம் Eloquent பல தரவுத்தளங்களுடன் திறமையாக ஒரு ActiveMethod செயல்படுத்தலைப் பயன்படுத்துகிறது. மாடல்-வியூ-கண்ட்ரோலர் (எம்விசி) கட்டமைப்பில் உருவாக்கப்பட்ட மாதிரியானது தரவுத்தளத்தில் உள்ள அட்டவணைக்கு ஒத்திருக்கும் ஒரு கட்டடக்கலை வடிவமாகும். நீண்ட SQL வினவல்களை குறியீடாக்காமல் மாதிரிகள் பொதுவான தரவுத்தள செயல்பாடுகளைச் செய்வதே இதன் நன்மை. வார்ப்புருக்கள் அட்டவணையில் தரவை வினவவும், புதிய பதிவுகளை அட்டவணையில் செருகவும் உங்களை அனுமதிக்கின்றன. வெவ்வேறு கணினிகளில் இயங்கும் பல தரவுத்தளங்களை ஒத்திசைக்கும் செயல்முறை எளிமைப்படுத்தப்பட்டுள்ளது. நீங்கள் SQL வினவல்களை எழுத வேண்டியதில்லை. நீங்கள் செய்ய வேண்டியது எல்லாம் defiதரவுத்தள அட்டவணைகள் மற்றும் அவற்றுக்கிடையேயான உறவுகளை முடிக்கவும், மீதமுள்ள வேலைகளை எலோக்வென்ட் செய்யும்.

லாராவெல் தயாரிப்பு

எலோக்வென்ட் ORM இன் பயன்பாட்டைப் பாராட்டுவதும், சுற்றுச்சூழல் அமைப்பைப் புரிந்துகொள்வதும் அவசியம். தொடங்குவதற்கான படிகள்:

  1. Getcomposer.org இலிருந்து Laravel ஐ நிறுவவும், இதைச் செய்ய இங்கே உள்ள வழிமுறைகளைப் பின்பற்றவும்
  2. உருவாக்கு migration கன்சோலைப் பயன்படுத்தி Artisan
  3. டெம்ப்ளேட்களை உருவாக்கவும் eloquent
  4. ஐ இயக்கவும் 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

இது உங்களின் அனைத்து இடம்பெயர்வுகளையும் ரத்து செய்யும்.

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 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
புதுமை செய்திமடல்
புதுமை பற்றிய மிக முக்கியமான செய்திகளைத் தவறவிடாதீர்கள். மின்னஞ்சல் மூலம் அவற்றைப் பெற பதிவு செய்யவும்.

சமீபத்திய கட்டுரைகள்

லாரவெல்லின் மாடுலர் கட்டிடக்கலையை ஆராய்தல்

லாராவெல், அதன் நேர்த்தியான தொடரியல் மற்றும் சக்திவாய்ந்த அம்சங்களுக்காக பிரபலமானது, மேலும் மட்டு கட்டிடக்கலைக்கு உறுதியான அடித்தளத்தை வழங்குகிறது. அங்கு…

29 மே 29

சிஸ்கோ ஹைப்பர்ஷீல்ட் மற்றும் ஸ்ப்ளங்கின் கையகப்படுத்தல் பாதுகாப்பு புதிய சகாப்தம் தொடங்குகிறது

சிஸ்கோ மற்றும் ஸ்ப்ளங்க் ஆகியவை வாடிக்கையாளர்களுக்கு எதிர்கால பாதுகாப்பு செயல்பாட்டு மையத்திற்கு (SOC) தங்கள் பயணத்தை விரைவுபடுத்த உதவுகின்றன…

29 மே 29

பொருளாதார பக்கத்திற்கு அப்பால்: ransomware இன் வெளிப்படையான செலவு

கடந்த இரண்டு ஆண்டுகளாக செய்திகளில் ரான்சம்வேர் ஆதிக்கம் செலுத்தி வருகிறது. தாக்குதல்கள் என்பதை பெரும்பாலான மக்கள் நன்கு அறிவார்கள்...

29 மே 29

ஆக்மென்ட் ரியாலிட்டியில் புதுமையான தலையீடு, கேடேனியா பாலிகிளினிக்கில் ஆப்பிள் வியூவருடன்

ஆப்பிள் விஷன் ப்ரோ கமர்ஷியல் வியூவரைப் பயன்படுத்தி கண்சிகிச்சை அறுவை சிகிச்சை கேடேனியா பாலிக்ளினிக்கில் செய்யப்பட்டது.

29 மே 29

குழந்தைகளுக்கான வண்ணப் பக்கங்களின் நன்மைகள் - எல்லா வயதினருக்கும் மாய உலகம்

வண்ணம் தீட்டுவதன் மூலம் சிறந்த மோட்டார் திறன்களை வளர்ப்பது, எழுதுவது போன்ற சிக்கலான திறன்களுக்கு குழந்தைகளை தயார்படுத்துகிறது. வண்ணம் தீட்ட…

29 மே 29

எதிர்காலம் இங்கே உள்ளது: கப்பல் துறை எவ்வாறு உலகப் பொருளாதாரத்தில் புரட்சியை ஏற்படுத்துகிறது

கடற்படைத் துறை ஒரு உண்மையான உலகளாவிய பொருளாதார சக்தியாகும், இது 150 பில்லியன் சந்தையை நோக்கி பயணித்துள்ளது...

29 மே 29

செயற்கை நுண்ணறிவு மூலம் செயலாக்கப்படும் தகவல்களின் ஓட்டத்தை ஒழுங்குபடுத்த வெளியீட்டாளர்கள் மற்றும் OpenAI ஒப்பந்தங்களில் கையெழுத்திடுகின்றனர்

கடந்த திங்கட்கிழமை, பைனான்சியல் டைம்ஸ் OpenAI உடன் ஒரு ஒப்பந்தத்தை அறிவித்தது. FT அதன் உலகத் தரம் வாய்ந்த பத்திரிகைக்கு உரிமம் அளிக்கிறது…

ஏப்ரல் 29 ஏப்ரல்

ஆன்லைன் கொடுப்பனவுகள்: ஸ்ட்ரீமிங் சேவைகள் உங்களை எப்படி எப்போதும் செலுத்த வைக்கின்றன என்பது இங்கே

மில்லியன் கணக்கான மக்கள் ஸ்ட்ரீமிங் சேவைகளுக்கு பணம் செலுத்துகிறார்கள், மாதாந்திர சந்தா கட்டணத்தை செலுத்துகிறார்கள். நீங்கள் என்பது பொதுவான கருத்து...

ஏப்ரல் 29 ஏப்ரல்

உங்கள் மொழியில் புதுமையைப் படியுங்கள்

புதுமை செய்திமடல்
புதுமை பற்றிய மிக முக்கியமான செய்திகளைத் தவறவிடாதீர்கள். மின்னஞ்சல் மூலம் அவற்றைப் பெற பதிவு செய்யவும்.

எங்களுக்கு பின்பற்றவும்

இணைப்பு

ஜீவனாம்சம் சைபர் தாக்குதல் blockchain chatbot அரட்டை gpt மேகம் கிளவுட் கம்ப்யூட்டிங் உள்ளடக்க சந்தைப்படுத்தல் சைபர் தாக்குதல் இணைய பாதுகாப்பு நுகர்வோர் உரிமை இணையவழி எனியா புதுமை நிகழ்வு gianfranco fedele Google செல்வாக்கு கண்டுபிடிப்பு புதுமைக்கு நிதியளித்தல் அதிகரிக்கும் கண்டுபிடிப்பு மருத்துவ கண்டுபிடிப்பு புதுமை நிலைத்தன்மை தொழில்நுட்ப கண்டுபிடிப்பு செயற்கை நுண்ணறிவு சனத்தொகை Laravel எந்திர கற்றல் metaverse மைக்ரோசாப்ட் nft PHP பதில் ரோபாட்டிக்ஸ் எஸ்சிஓ ஸெர்ப் மென்பொருள் மென்பொருள் வடிவமைப்பு மென்பொருள் மேம்பாடு மென்பொருள் பொறியியல் பேண்தகைமை தொடக்க தேல்ஸ் பயிற்சி VPN web3