का उपयोग कर आप कहते हैं निम्नलिखित नियंत्रक संरचनाYii2 मार्ग जब केमलकेस कार्रवाई नामों
<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
/**
* Test controller
*/
class TestController extends Controller
{
public function actionMyaction(){
...
//action logic
}
public function actionMyAction(){
...
//action logic
}
}
पहले मार्ग पथ का उपयोग example.com/test/myaction
प्रति Yii 1.x तर्क दूसरा मार्ग होना चाहिए पहुँचा जा सकता है है, तो पथ example.com/test/myAction
Yii2.x मार्ग में से सुलभ हाइफन संरचना का उपयोग और केवल example.com/test/my-action
से पहुँचा जा सकता है कर रहा है वहाँ है वैसे भी CamelCase का उपयोग कर मार्ग को सक्षम करने के रूटिंग कक्षाओं के विस्तार के बिना वाईआई 2 में संरचना?
यह महत्वपूर्ण है क्योंकि यह सभी लिंक (जो बिल्कुल इंटरनेट पर हैं) पिछड़ा संगतता तोड़ता है और इस प्रकार Yii1.x ऐप को Yii2.x पर माइग्रेट नहीं किया जा सकता है भले ही कोड पूरी तरह से लिखा गया हो। इस परिवर्तन का कारण क्या था?
धन्यवाद Mikhai, एसईओ बनाता है भावना पुराने प्रोजेक्ट में कार्यों के सैकड़ों देखते हैं, मैन्युअल रूप से हर रीरूटिंग एक ऐसा लगता है कि एक रेगेक्स आधारित समाधान क्यूबर्सोम संभव है? – Manquer
आप 1 कस्टम यूआरएल मैनेजर http://www.yiiframework.com/doc-2.0/guide-runtime-url-handling.html#creating-your-own-rule-classes लिख सकते हैं जो उन सभी पर शासन कर सकते हैं :)। मैंने व्यक्तिगत रूप से एक नहीं लिखा क्योंकि मेरी परियोजना को आसानी से संभालना था, सार्वजनिक हिस्सा इतना बड़ा नहीं है और व्यवस्थापक मुझे वास्तव में एसईओ की परवाह नहीं करता है। –