Apabila membangunkan CMS tersuai, anda mungkin perlu membenarkan pentadbir untuk menentukan laluan tersuai pelbagai peringkat untuk jenis kandungan yang berbeza. Sebagai contoh, anda mungkin perlu membuat laluan seperti "Anjing Baru Saya dalam Berita" atau "Saya Persidangan mengenai mesyuarat insiden artikel". Untuk menyelesaikan masalah ini, anda boleh mempertimbangkan menggunakan subclass
Custom.
RouteBase
custompageroute: merealisasikan penghalaan tersuai
Buat kelas yang dipanggil , warisan seperti dari
. Buat semula kaedah dan untuk memproses penghalaan tersuai.
CustomPageRoute
Dalam , tentukan laluan yang sepadan dari permintaan. Jika anda mencari item yang sepadan, buat objek RouteBase
untuk pengawal dan operasi yang sepadan. GetRouteData
GetVirtualPath
Dalam , cari halaman yang sepadan dari set halaman. Jika anda mencari item yang sepadan, kembalikan objek
GetRouteData
Daftar penghalaan tersuai RouteData
Gunakan untuk mendaftar GetVirtualPath
ke MVC. Untuk mendapatkan prestasi yang lebih baik, pastikan anda menggunakan URL huruf kecil. Dengan laluan lalai untuk URL lain. VirtualPathData
Buat
dengan kaedah operasi. Di sinilah pemprosesan logik aplikasi laluan tersuai terletak. routes.Add
CustomPageRoute
kod sampel
di bawah pelaksanaan asas kelas :
Gunakan Laluan Pendaftaran MVC: Details
CustomPageController
create :
CustomPageRoute
Penyelesaian ini membolehkan anda membuat laluan tersuai multi -peringkat yang fleksibel sambil mengekalkan kelebihan laluan MVC.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan penghalaan tersuai pelbagai peringkat di MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!