توجيه CakePhp، باستخدام بادئة اللغة باستخدام بادئة افتراضية

StackOverflow https://stackoverflow.com/questions/2041592

سؤال

أحاول إنشاء بادئة توجيه سيكون الافتراضي.

http: // localhost / heb / mycont سوف يغادر إلى الصفحة العبرية، في حين

http: // localhost / mycont سيؤدي إلى الصفحة الإنجليزية.

Router::connect('/:language/mycont',array('controller'=>'contname','action'=>'index'),array('language'=>'[a-z]{0,3}'));

يتيح لي هذا الرمز استخدام 0-3 أحرف للغة، لكنه لا يزال يتطلب لغة!

http: // localhost / a / mycont سوف تعمل

http: // localhost / mycont لا يعمل

أي أفكار كيفية إصلاح ذلك؟ هل هو ممكن مع التوجيه الافتراضي؟

هل كانت مفيدة؟

المحلول 2

كان الحل الخاص بي هو إعداد / إلى لغة محددة، في حين أن كل شيء آخر يتم وضع علامة /: اللغة /

وبهذه الطريقة لم أحصل على طرق مكررة.

نصائح أخرى

اسمحوا لي أن مقدما هذا من خلال القول أنني لست خبير توجيه، ولكن في هذه الحالة، من المنطقي أن ما لم تنجح فيه لأن الطريق يتوقع معلمة لغة؛ لن يتطابق المسار إذا لم يكن هناك.

إلى "إصلاح" (نقلت نظرا لأنها غير مكسورة حقا)، قد ترغب في تجربة إعداد الإعداد الافتراضي الخاص بك، وفي AppController, ، الكتابة فوق اذا :language القيمة موجودة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top