मुझे पता है कि इस विषय के बारे में कुछ अन्य विषय हैं, लेकिन उनमें से कोई भी मेरी आवश्यकताओं के अनुरूप नहीं लगता है।केकेपीएचपी नियंत्रक ऊर्फ
मैं क्या है
- example.com/log/
- LogsController.php
मैं LogsController
बजाय LogController
(बहुवचन) क्योंकि CakePHP आप में नियंत्रकों करना चाहती है बहुवचन।
लेकिन जैसा कि आप जानते/नोटिस कर सकते हैं, example.com/log/
यूआरएल में गायब होने की वजह से कभी भी LogsController
का उपयोग नहीं करेगा।
अब, मैं /log/*
को /logs/*
पर रीडायरेक्ट करना चाहता हूं। निम्न कोड के साथ पूरी तरह से ठीक काम करता है:
Router::connect ('/log/*', array('controller'=>'logs'));
लेकिन, जब मैं example.com/log/actions/foo/bar
तक पहुँचने का प्रयास यह काम करने के लिए प्रतीत नहीं होता। तो कुछ गूगलिंग के बाद मुझे यह मिला:
Router::connect ('/log/:action/*', array('controller'=>'logs'));
अच्छा काम करता है। लेकिन अब जब मैं फिर से example.com/log/ का उपयोग करने की कोशिश कर रहा हूँ, यह कहते हैं
Error: LogController could not be found.
प्रश्न तो मेरे सवाल है, कैसे मैं अपने यूआरएल के लिए उपनाम सेट कर सकता हूं ताकि /log/
का उपयोग करेगा का उपयोग करने की कोशिश करने के बजाय LogsController
।
मेरे पास कुछ और नियंत्रक हैं जहां मैं इसे बदलना चाहता हूं, जैसे flight => FlightsController
, profile => ProfilesController
।
this question पर एक नज़र डालें। यह एक ही विषय के बारे में है, लेकिन थोड़ा अलग है। यह आपको किसी तरह से मदद कर सकता है।
इसे पढ़ें http://stackoverflow.com/questions/9959152/define-a-singular-rule-in-the-bootstrap-for-inflector – cgTag
केवल केक को बताना आसान है कि "उड़ान" एकवचन और बहुवचन दोनों है । – cgTag