CodeIgniter Özel Yönetici URI Rotalar

3 Cevap php

GÜNCELLEME: ÇÖZÜLDÜ! Kırık sayfaları için ben sadece bir yönetici denetleyicisi yaptı. Yani artık her model için bir işlevi vardır :) Mutlu günler!

Benim ön-uç kodu olarak aynı denetleyicisi benim yönetici işlevi ev çalışılıyor. Yönetici erişilebilir böylece ben üzerinden bazı özel yolları kuruyorum Bunu yapmak için:

/admin/controller/id // instead of /controller/admin/id
/admin/controller/create // instead of /controller/create
/admin/controller/detail/id // instead of /controller/detail/id
/admin/controller/update/id // instead of /controller/update/id
/admin/controller/delete/id // instead of /controller/delete/id

Benim şimdiki yolları, ayrıntı için mükemmel çalışır oluşturma, güncelleme, silme

$route['admin/(:any)/detail'] = "$1/detail"; // WORKS!!!
$route['admin/(:any)/detail/(:num)'] = "$1/detail/$2"; // WORKS!!!
$route['admin/(:any)/create'] = "$1/create"; // WORKS!!!
$route['admin/(:any)/create/(:num)'] = "$1/create/$2"; // WORKS!!!
$route['admin/(:any)/update'] = "$1/update"; // WORKS!!!
$route['admin/(:any)/update/(:num)'] = "$1/update/$2"; // WORKS!!!
$route['admin/(:any)/delete'] = "$1/delete"; // WORKS!!!
$route['admin/(:any)/delete/(:num)'] = "$1/delete/$2"; // WORKS!!!

ANCAK ben yönetici sayfa bir kimliği ile çalışmak için alınamıyor. Ben indeks sayfasını aktarabilirim, ama ben kimliğini geçemezse sayfalandırma kullanmak mümkün olacak.

$route['admin/(:any)'] = "$1/admin"; // WORKS!!!
$route['admin/(:any)/(:num)'] = "$1/admin/$2"; // EPIC FAIL :( 404's

Birisi bana bu sorunu çözmeye yardımcı, hatta uygulama yapısının alternatif çözüm önermek lütfen.

3 Cevap

Default_controller rota SONRA gitmek gerekir sizin regex yolları (: num ve herhangi bir o ile yolları dahil) emin olun.

İyi bir yönetici paneli oluşturmak için daha fazla yollar, creating an admin panel in CodeIgniter benim makalesine bir göz atın. Bunu yapmak için üç iyi yolu vardır, bu makalede yanlısı ve con her açıklıyor.

Yönetici karmaşık olduğunu ve bunun için birkaç kontrolörleri gerekiyorsa, sadece application / controllers klasörü bir yönetici klasör oluşturabilirsiniz. Sonra bu sizin yönetici denetleyicileri koymak.

Yani uygulama / kontrolörleri / admin / login http://example.com/admin/login gibi çalışacak

Zaten kabul edilen bir cevabı var, ama ben size ilk RegEx'in bir sonu-line çapa dahil eğer kurulum iyi çalışır düşünüyorum eski bir soru:

$route['admin/(:any)/(:num)$'] = "$1/admin/$2"; // EPIC FAIL :( 404's
                          ^^^

Aksi takdirde ikinci RegEx'in / w yakalamak niyetinde olduğunuz URL'leri ilk RegEx'in tarafından ele alacak.