Laravel اور Eloquent ایپلی کیشن اور پلیٹ فارم کی ترقی کو تیز کرنے میں مدد کرتے ہیں، زیادہ تر مسائل کا مناسب حل فراہم کرتے ہیں۔ تقاضوں کو تیز تر ترقی کے ساتھ ساتھ اچھی طرح سے منظم، دوبارہ قابل استعمال، برقرار رکھنے کے قابل، اور توسیع پذیر کوڈ کے ساتھ حل کیا جاتا ہے۔
ڈویلپرز کام کر سکتے ہیں۔ Eloquent
ایکٹیو میتھڈ کے نفاذ کو مؤثر طریقے سے استعمال کرتے ہوئے متعدد ڈیٹا بیس کے ساتھ۔ یہ ایک آرکیٹیکچرل پیٹرن ہے جہاں Model-View-Controller (MVC) ڈھانچے میں بنایا گیا ماڈل ڈیٹا بیس میں موجود ٹیبل سے مطابقت رکھتا ہے۔ فائدہ یہ ہے کہ ماڈلز طویل ایس کیو ایل سوالات کو کوڈنگ کیے بغیر عام ڈیٹا بیس آپریشنز انجام دیتے ہیں۔ ٹیمپلیٹس آپ کو جدولوں میں ڈیٹا استفسار کرنے اور ٹیبلز میں نئے ریکارڈ داخل کرنے کی اجازت دیتے ہیں۔ مختلف سسٹمز پر چلنے والے متعدد ڈیٹا بیسز کو ہم آہنگ کرنے کے عمل کو آسان بنایا گیا ہے۔ آپ کو SQL سوالات لکھنے کی ضرورت نہیں ہے۔ آپ کو صرف اتنا کرنا ہے۔ defiڈیٹا بیس ٹیبلز اور ان کے درمیان تعلقات کو ختم کریں، اور Eloquent باقی کام کرے گا۔
Eloquent ORM کی افادیت کی تعریف کرنا، اور ماحولیاتی نظام کو سمجھنا ضروری ہے۔ شروع کرنے کے اقدامات:
migration
کنسول کا استعمال کرتے ہوئے Artisan
eloquent
seed
ڈیٹا بیس کےArtisan Console
Laravel میں شامل کمانڈ لائن انٹرفیس کا نام ہے۔ آپ کی ایپلیکیشن تیار کرتے وقت استعمال کرنے کے لیے مفید کمانڈز کا ایک سیٹ فراہم کرتا ہے۔ یہ طاقتور جزو کے ذریعہ کارفرما ہے۔ Symfony Console
.
تمام دستیاب آرٹیسن کمانڈز کی فہرست دیکھنے کے لیے، آپ فہرست کمانڈ استعمال کر سکتے ہیں:
php artisan list
تمام احکامات اس کے دلائل اور اختیارات کی جامع وضاحت کے ساتھ آتے ہیں۔ یہ ایک "مدد" اسکرین میں دکھایا گیا ہے۔ مدد کی اسکرین کو ظاہر کرنے کے لیے، صرف کمانڈ کے نام سے پہلے "مدد" کے ساتھ جیسا کہ دکھایا گیا ہے:
php artisan help migrate
Migration
منتقلی ایک ڈیٹا بیس کے انتظام کا عمل ہے اس کے بجائے پی ایچ پی لکھ کر 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
یہاں آپ ڈی بی میں اندراجات کو حذف کرنا، شامل کرنا، ان میں ترمیم کرنا، پھر انہیں ایک سادہ کمانڈ کے ساتھ بحال کرنا جاری رکھ سکتے ہیں۔
Laravel Eloquent object-relational mapper (ORM) کے ساتھ CRUD آپریشنز Laravel ڈویلپرز کے لیے متعدد ڈیٹا بیس کے ساتھ کام کرنا آسان بنا دیتے ہیں۔ یہ تخلیق، پڑھنے، اپ ڈیٹ، اور ڈیلیٹ (CRUD) آپریشنز انجام دیتا ہے، اور آبجیکٹ ماڈلز کو ڈیٹا بیس ٹیبل پر نقش کرتا ہے۔ CRUD آپریشنز کے لیے درکار تمام ڈیٹا بیس تعاملات کو ہینڈل کرتا ہے۔
آپ ڈیٹا بیس میں نیا ریکارڈ داخل کرنے کے لیے ::create طریقہ استعمال کر سکتے ہیں۔
student_record::create(array(
'first_name' => 'John',
'last_name' => 'Doe',
'student_rank' => 1
));
اوپر دکھائے گئے سادہ تخلیقی طریقہ کے علاوہ، آپ ایک نیا آبجیکٹ بھی بنا سکتے ہیں اور اسے مختلف اوصاف دے سکتے ہیں۔ پھر، آپ save() فنکشن کو کال کر کے کوڈ چلا سکتے ہیں۔ جیسے طریقے firstOrCreate
()o firstOrNew
() ریکارڈ بنانے کے لیے دوسرے اختیارات ہیں۔ یہ آپ کو کچھ خاص صفات کے ساتھ طالب علم تلاش کرنے کی اجازت دیں گے۔ اگر وہ طالب علم نہیں ملتا ہے، تو آپ اسے ڈیٹا بیس میں تخلیق کریں گے یا ایک نئی مثال پیش کریں گے۔
Eloquent ORM کا استعمال کرتے ہوئے، آپ اپنے ڈیٹا بیس میں ریکارڈ تلاش کر سکتے ہیں۔ سوالات آسانی سے بنائے جاتے ہیں اور ایک ہموار بہاؤ پیش کرتے ہیں۔ بیانات بنانے کے لیے:where
، آپ طریقے استعمال کریں گے۔ get
() اور first
() طریقہ کار first
() صرف ایک ریکارڈ واپس کرے گا، جبکہ طریقہ get
() ریکارڈز کی ایک loopable صف واپس کرے گا. اس کے علاوہ، طریقہ find
() کو بنیادی کلیدوں کی ایک صف کے ساتھ استعمال کیا جا سکتا ہے، جو مماثل ریکارڈز کا مجموعہ واپس کرے گا۔ یہاں کچھ مثالیں ہیں:
$student = Students::all();
یہ کوڈ تمام طلباء کو ملتا ہے۔ جب کہ درج ذیل کوڈ ایک مخصوص طالب علم کو ID کے ذریعے تلاش کرتا ہے:
$student = طلباء::تلاش کریں(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();
محفوظ کرنے کا طریقہ ان ماڈلز کو اپ ڈیٹ کرنے کے لیے بھی استعمال کیا جا سکتا ہے جو ڈیٹا بیس میں پہلے سے موجود ہیں۔
فصیح اپنے آسان ریکارڈ کو اپ ڈیٹ کرنے کے عمل پر فخر کرتا ہے، لیکن حذف کرنے کے ساتھ اس کی ایک ہی کہانی ہے۔ دو اختیارات ہیں: ریکارڈ کو نکالنا اور حذف کرنے کے طریقہ کار پر عمل کرنا، یا صرف تباہی کا طریقہ استعمال کرنا۔ کسی ریکارڈ کو تلاش کرنے اور حذف کرنے کے لیے، بس درج ذیل کمانڈز کو چلائیں:
$student = Students::find(1);
$student->delete();
ایک ریکارڈ اور متعدد ریکارڈز کو حذف کرنے کے لیے، کمانڈ چلائے جاتے ہیں:
Students::destroy(1);
Students::destroy(1, 2, 3);
نوٹ کریں کہ تباہی کے پیرامیٹرز حذف کرنے کے طریقہ کے برعکس صرف بنیادی کلیدیں ہیں جو کسی بھی ڈیٹا بیس کالم کو قبول کر سکتی ہیں۔
لیول 10 سے اوپر کے تمام طلباء کو تلاش کرنے اور حذف کرنے کے لیے۔
Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
Veeam کی طرف سے Coveware سائبر بھتہ خوری کے واقعات کے ردعمل کی خدمات فراہم کرتا رہے گا۔ Coveware فرانزک اور تدارک کی صلاحیتیں پیش کرے گا…
پیشن گوئی کی دیکھ بھال تیل اور گیس کے شعبے میں انقلاب برپا کر رہی ہے، پلانٹ کے انتظام کے لیے ایک جدید اور فعال نقطہ نظر کے ساتھ۔
UK CMA نے مصنوعی ذہانت کے بازار میں بگ ٹیک کے رویے کے بارے میں ایک انتباہ جاری کیا ہے۔ وہاں…
عمارتوں کی توانائی کی کارکردگی کو بڑھانے کے لیے یورپی یونین کی طرف سے تیار کردہ "گرین ہاؤسز" فرمان نے اپنے قانون سازی کے عمل کو اس کے ساتھ ختم کیا ہے…