Penghalaan sumber (CURD)



Penghalaan sumber

Penghalaan sumber, yang boleh menjana sekumpulan laluan dengan pantas, terutamanya sesuai untuk operasi CURD

Menyokong penetapan penghalaan sumber untuk pendaftaran yang dinamakan RESTFul

, sebagai permintaan yang diberi nama RESTFul

Apabila sumber dialihkan ke pengawal Blog, sistem akan mendaftarkan 7 peraturan penghalaan secara automatik, seperti berikut:


operasi lalai indeksDAPAT
PengenalpastianJenis permintaanJanakan peraturan penghalaan
blogindex
createGETblog/createcreate
savePOSTblogsave
readGETblog/:idread
editGETblog/:id/editedit
updatePUTblog/:idupdate
deleteDELETEblog/:idblogindeks
buat


DAPATKAN

blog/buat

POST

blog

simpan

baca

DAPATKAN

blog/:id

baca

edit

edit

>blog/ :id/edit

edit

kemas kini

PUT

blog/ :id

kemas kini🎜🎜🎜🎜delete🎜🎜TE🎜 >blog/ :id🎜🎜delete🎜🎜🎜🎜🎜🎜🎜🎜Pengawal khusus yang ditunjuk ditentukan oleh alamat penghalaan Anda hanya perlu mencipta kaedah operasi yang sepadan di atas untuk pengawal Blog untuk menyokong perkara berikut Akses URL: 🎜
Route::resource('blog', 'Blog');
🎜Kaedah yang sepadan dalam pengawal Blog adalah seperti berikut: 🎜
http://serverName/blog/
http://serverName/blog/128
http://serverName/blog/28/edit
🎜Anda boleh mencipta kelas pengawal sumber dengan cepat melalui baris arahan (rujuk bahagian pengawal sumber dalam bab pengawal kemudian). 🎜🎜Anda boleh menukar nama parameter id lalai, contohnya: 🎜
<?php
namespace app\controller;

class Blog
{
    public function index()
    {
    }

    public function read($id)
    {
    }

    public function edit($id)
    {
    }
}
🎜Takrif kaedah pengawal perlu dilaraskan seperti berikut: 🎜
Route::resource('blog', 'Blog')
    ->vars(['blog' => 'blog_id']);
🎜Anda juga boleh mengehadkan kaedah pelaksanaan (identiti) semasa mentakrifkan penghalaan sumber, contohnya : 🎜
<?php
namespace app\controller;

class Blog
{
    public function index()
    {
    }

    public function read($blog_id)
    {
    }

    public function edit($blog_id)
    {
    }
}
🎜Penghalaan sumber Pengecam tidak boleh ditukar, tetapi peraturan penghalaan yang dijana dan kaedah operasi yang sepadan boleh diubah suai. 🎜🎜Jika anda perlu menukar operasi sepadan pengecam penghalaan sumber, anda boleh menggunakan kaedah berikut: 🎜
// 只允许index read edit update 四个操作
Route::resource('blog', 'Blog')
    ->only(['index', 'read', 'edit', 'update']);
    
// 排除index和delete操作
Route::resource('blog', 'Blog')
    ->except(['index', 'delete']);
🎜Selepas menetapkan, akses URL menjadi: 🎜
Route::rest('create',['GET', '/add','add']);
🎜Kaedah operasi yang sepadan untuk mencipta halaman blog juga menjadi tambah. 🎜🎜membuat perubahan batch, seperti berikut: 🎜
http://serverName/blog/create
变成
http://serverName/blog/add
🎜🎜resource Nesting 🎜🎜🎜🎜Supports Nesting laluan sumber, contohnya: 🎜
Route::rest([
    'save'   => ['POST', '', 'store'],
    'update' => ['PUT', '/:id', 'save'],
    'delete' => ['DELETE', '/:id', 'destory'],
]);
🎜you boleh mengakses alamat berikut: 🎜
Route::resource('blog', 'Blog');
Route::resource('blog.comment','Comment');
e🎜the peraturan routing yang dihasilkan adalah: 🎜
http://serverName/blog/128/comment/32
http://serverName/blog/128/comment/32/edit
ee🎜 Kaedah pengendalian yang sepadan bagi pengawal Komen adalah seperti berikut: 🎜
blog/:blog_id/comment/:id
blog/:blog_id/comment/:id/edit
🎜Susunan parameter dalam kaedah edit boleh sewenang-wenangnya, tetapi nama parameter mesti memenuhi keperluan definisi. 🎜🎜Jika anda perlu menukar nama pembolehubah, anda boleh menggunakan: 🎜
<?php

namespace app\controller;

class Comment
{
    public function edit($id, $blog_id)
    {
    }
}
🎜Kaedah operasi yang sepadan bagi pengawal Komen ditukar kepada: 🎜
// 更改嵌套资源路由的blog资源的资源变量名为blogId
Route::resource('blog.comment', 'index/comment')
    ->vars(['blog' => 'blogId']);
🎜🎜🎜🎜 🎜