laravel

Pengawal Sumber Laravel

Pengawal Sumber Laravel
Pengawal sumber digunakan di Laravel untuk melakukan operasi CRUD dengan mudah. Apabila anda akan membuat pengawal sumber menggunakan perintah artisan dari terminal maka ia akan membuat semua kaedah yang diperlukan di dalam pengawal yang berkaitan dengan operasi CRUD. Ia menangani semua permintaan HTTP untuk aplikasi dan memerlukan satu baris kod untuk laluan CRUD. Bagaimana anda boleh membuat pengawal sumber dan melakukan operasi CRUD di Laravel ditunjukkan dalam tutorial ini.

Prasyarat:

Anda memerlukan jadual dalam pangkalan data di mana projek Laravel disambungkan. Anda boleh membuat jadual dengan perintah migrasi atau secara manual. Saya telah menggunakan pengguna jadual dalam tutorial ini untuk melakukan operasi CRUD menggunakan pengawal sumber. Meja kosong sekarang. Struktur jadual ditunjukkan di bawah.

Buat Pengawal Sumber:

Jalankan arahan berikut dari terminal untuk membuat pengawal sumber bernama Pengawal Pengguna.

$ php artisan make: pengawal UserController - sumber

Sekiranya anda membuka pengawal dari mana-mana penyunting, anda akan melihat kod berikut sudah ditulis dalam pengawal. Tujuh kaedah dibuat di dalam pengawal secara automatik untuk melakukan operasi CRUD.

namespace App \ Http \ Controllers;
gunakan Illuminate \ Http \ Request;
UserController kelas meluaskan Pengawal

/ **
* Paparkan senarai sumber.
*
* @return \ Illuminate \ Http \ Response
* /
indeks fungsi awam ()

//

/ **
* Tunjukkan borang untuk membuat sumber baru.
*
* @return \ Illuminate \ Http \ Response
* /
fungsi awam membuat ()

//

/ **
* Simpan sumber yang baru dibuat dalam simpanan.
*
* @param \ Illuminate \ Http \ Permintaan $ permintaan
* @return \ Illuminate \ Http \ Response
* /
kedai fungsi awam (Permintaan $ permintaan)

//

/ **
* Paparkan sumber yang ditentukan.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
rancangan fungsi awam ($ id)

//

/ **
* Tunjukkan borang untuk mengedit sumber yang ditentukan.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
suntingan fungsi awam ($ id)

//

/ **
* Kemas kini sumber yang ditentukan dalam simpanan.
*
* @param \ Illuminate \ Http \ Permintaan $ permintaan
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
kemas kini fungsi awam (Permintaan $ permintaan, $ id)

//

/ **
* Keluarkan sumber yang ditentukan dari simpanan.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
fungsi awam memusnahkan ($ id)

//

Laluan Sumber:

Tambahkan laluan berikut untuk Pengawal Pengguna untuk membuat laluan sumber di laman web.php fail.

Laluan :: sumber ('pengguna', 'UserController');

Sekarang, jalankan arahan berikut dari terminal untuk memeriksa senarai laluan semasa dari laman web.php fail.

laluan artisan $ php: senarai

Maklumat laluan berikut dihasilkan untuk menggunakan kaedah Route :: resource (). tujuh laluan dibuat untuk memanggil tujuh kaedah. Penggunaan laluan ini dijelaskan kemudian di bahagian seterusnya dari tutorial ini.

Tambahkan baris berikut pada awal Pengawal Pengguna.php fail untuk mengimport model Pengguna, perkhidmatan Hash untuk mencirikan kata laluan, dan perkhidmatan DB untuk operasi pangkalan data.

gunakan Aplikasi \ Pengguna;
gunakan Hash;
gunakan DB

Masukkan Rekod:

Ubah suai buat () kaedah Pengawal Pengguna dengan kod berikut. Di sini, objek dari Pengguna model dibuat untuk memasukkan rekod baru. Setelah memberikan nilai wajib, the simpan () fungsi dipanggil untuk memasukkan rekod baru ke dalam pelajar meja.

fungsi awam membuat ()

$ pengguna = Pengguna baru;
$ user-> name = 'fahmida';
$ user-> email = '[email dilindungi]';
$ user-> password = Hash :: make ('12345');
cuba
$ user-> save ();
gema "Rekod dimasukkan";

tangkap (\ Illuminate \ Database \ QueryException $ e)
gema "Pendua pendua";

Laluan untuk memanggil buat () kaedah Pengawal Pengguna adalah 'pengguna / buat'. Jalankan URL berikut dari penyemak imbas. Sekiranya rekod dimasukkan dengan betul maka output berikut akan muncul.

http: // localhost / laravelpro / awam / pengguna / buat

Sekarang, jika periksa jadual dari pangkalan data maka anda akan mendapat output berikut.

Lihat Semua Rekod:

Ubah suai indeks () kaedah Pengawal Pengguna dengan kod berikut untuk mengambil semua rekod dari pengguna jadual dan paparkan nilai-nilai nama dan e-mel.

indeks fungsi awam ()

$ users = DB :: select ('select * from users');
foreach (pengguna $ sebagai pengguna $)

echo "Nama: $ pengguna-> nama";
gema "
E-mel: $ user-> e-mel ";

Laluan untuk memanggil indeks () kaedah Pengawal Pengguna adalah 'pengguna'. Jalankan URL berikut dari penyemak imbas.

http: // localhost / laravelpro / awam / pengguna

Output berikut akan muncul.

Pilih Rekod Khusus:

Ubah suai tunjuk () kaedah Pengawal Pengguna dengan kod berikut untuk mendapatkan rekod dari pengguna jadual yang mengandungi 1 di dalam ID medan dan memaparkan nilai nama.

rancangan fungsi awam ($ id)

$ user = DB :: select ('select * dari pengguna di mana id ='.$ id);
echo "Nama pengguna adalah". $ pengguna [0] -> nama."
";

Laluan untuk memanggil tunjuk () kaedah Pengawal Pengguna adalah 'pengguna / id'. Jalankan URL berikut dari penyemak imbas.

http: // localhost / laravelpro / awam / pengguna / 1

Output berikut akan muncul.

Kemas kini Rekod:

Dua kaedah ditentukan terutamanya dalam pengawal sumber untuk mengemas kini rekod pangkalan data. Ini adalah sunting () dan kemas kini () di mana data rekod dikemas kini menggunakan borang yang diedit. Tetapi tidak ada borang penyuntingan yang digunakan di sini. Jadi, hanya yang sunting () kaedah digunakan untuk mengemas kini rekod tertentu dari pelajar meja. Nilai semasa rekod tertentu dicetak sebelum dan selepas melaksanakan pertanyaan kemas kini.

suntingan fungsi awam ($ id)

$ user = DB :: select ('select * dari pengguna di mana id ='.$ id);
echo "E-mel semasa pengguna adalah". $ pengguna [0] -> e-mel."
";
$ email = '[dilindungi e-mel]';
$ user = DB :: select ("Kemas kini pengguna menetapkan e-mel = '$ email'where id =".$ id);
$ user = DB :: select ('select * dari pengguna di mana id ='.$ id);
echo "E-mel pengguna selepas kemas kini adalah". $ pengguna [0] -> e-mel;

Laluan untuk memanggil sunting () kaedah Pengawal Pengguna adalah 'pengguna / id / edit'. Jalankan URL berikut dari penyemak imbas.

http: // localhost / laravelpro / awam / pengguna / 1 / edit

Output berikut akan muncul.

Padam Rekod:

menghancurkan () kaedah didefinisikan untuk menghapus sebarang rekod dari jadual. Tetapi laluan untuk menghapus rekod berlalu dari kaedah lain. Di sini, saya telah menggunakan tunjuk () kaedah untuk membuat hiperpautan untuk menghapus rekod yang ditambahkan pada akhir kaedah.

rancangan fungsi awam ($ id)

$ user = DB :: select ('select * dari pengguna di mana id ='.$ id);
echo "Nama pengguna adalah". $ pengguna [0] -> nama."
";
gema "Padam";

Tambahkan kod berikut di memusnahkan () kaedah untuk menghapus rekod tertentu.

fungsi awam memusnahkan ($ id)

$ user = DB :: select ('Hapus dari pengguna di mana id ='.$ id);
gema "Rakaman dipadam";

Tambahkan laluan masuk laman web.php fail untuk memanggil memusnahkan () kaedah.

Laluan :: get ('/ users / delete / id', '[email dilindungi]');

Setelah mengklik pautan hapus output berikut akan muncul.

Kesimpulan:

Penggunaan pengawal sumber dan konsep sumber laluan dijelaskan secara terperinci dalam tutorial ini dengan menggunakan operasi CRUD. Saya harap, ia dapat membantu pengguna Laravel baru untuk melaksanakan operasi CRUD dengan mudah dalam projek mereka.

Tutorial OpenTTD
OpenTTD adalah salah satu permainan simulasi perniagaan yang paling popular di luar sana. Dalam permainan ini, anda perlu membuat perniagaan pengangku...
SuperTuxKart untuk Linux
SuperTuxKart adalah tajuk hebat yang direka untuk membawa anda pengalaman Mario Kart secara percuma pada sistem Linux anda. Ia cukup mencabar dan meny...
Tutorial Battle for Wesnoth
The Battle for Wesnoth adalah salah satu permainan strategi sumber terbuka paling popular yang boleh anda mainkan pada masa ini. Bukan hanya permainan...