Yii - URL रूटिंग
एप्लिकेशन के डिफ़ॉल्ट मार्ग को बदलने के लिए, आपको कॉन्फ़िगर करना चाहिए defaultRoute संपत्ति।
Step 1 - संशोधित करें config/web.php निम्नलिखित तरीके से फाइल करें।
<?php
$params = require(__DIR__ . '/params.php'); $config = [
'id' => 'basic',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'defaultRoute' => 'site/contact',
'components' => [
//other code
?>
Step 2 - को मिल गया http://localhost:8080/index.php। आपको डिफ़ॉल्ट दिखाई देगाcontact पृष्ठ।
अपने आवेदन को अस्थायी रूप से रखरखाव मोड में रखने के लिए, आपको कॉन्फ़िगर करना चाहिए yii\web\Application::$catchAll संपत्ति।
Step 3 - निम्न फ़ंक्शन को इसमें जोड़ें SiteController।
public function actionMaintenance() {
echo "<h1>Maintenance</h1>";
}
Step 4 - फिर, संशोधित करें config/web.php निम्नलिखित तरीके से फाइल करें।
<?php
$params = require(__DIR__ . '/params.php');
$config = [
'id' => 'basic',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'catchAll' => ['site/maintenance'],
'components' => [
//OTHER CODE
Step 5 - अब अपने आवेदन के किसी भी URL को दर्ज करें, आप निम्नलिखित देखेंगे।
URL बनाना
विभिन्न प्रकार के URL बनाने के लिए आप इसका उपयोग कर सकते हैं yii\helpers\Url::to()सहायक विधि। निम्न उदाहरण मानता है कि डिफ़ॉल्ट URL प्रारूप का उपयोग किया जा रहा है।
Step 1 - जोड़ें actionRoutes() करने की विधि SiteController।
public function actionRoutes() {
return $this->render('routes');
}
यह विधि सरलता से प्रस्तुत करती है routes राय।
Step 2 - दृश्य / साइट निर्देशिका के अंदर, नामक एक फ़ाइल बनाएं routes.php निम्नलिखित कोड के साथ।
<?php
use yii\helpers\Url;
?>
<h4>
<b>Url::to(['post/index']):</b>
<?php
// creates a URL to a route: /index.php?r = post/index
echo Url::to(['post/index']);
?>
</h4>
<h4>
<b>Url::to(['post/view', 'id' => 100]):</b>
<?php
// creates a URL to a route with parameters: /index.php?r = post/view&id=100
echo Url::to(['post/view', 'id' => 100]);
?>
</h4>
<h4>
<b>Url::to(['post/view', 'id' => 100, '#' => 'content']):</b>
<?php
// creates an anchored URL: /index.php?r = post/view&id=100#content
echo Url::to(['post/view', 'id' => 100, '#' => 'content']);
?>
</h4>
<h4>
<b>Url::to(['post/index'], true):</b>
<?php
// creates an absolute URL: http://www.example.com/index.php?r=post/index
echo Url::to(['post/index'], true);
?>
</h4>
<h4>
<b>Url::to(['post/index'], 'https'):</b>
<?php
// creates an absolute URL using the https scheme: https://www.example.com/index.php?r=post/index
echo Url::to(['post/index'], 'https');
?>
</h4>
Step 3 - टाइप करें http://localhost:8080/index.php?r=site/routes, आप के कुछ उपयोग देखेंगे to() समारोह।
मार्ग से गुजरा yii\helpers\Url::to() विधि निम्नलिखित नियमों के अनुसार सापेक्ष या निरपेक्ष हो सकती है -
यदि मार्ग खाली है, तो वर्तमान में अनुरोधित मार्ग का उपयोग किया जाएगा।
यदि मार्ग में कोई प्रमुख स्लैश नहीं है, तो इसे वर्तमान मॉड्यूल के सापेक्ष एक मार्ग माना जाता है।
यदि मार्ग में कोई स्लैश नहीं है, तो इसे वर्तमान नियंत्रक की एक कार्रवाई आईडी माना जाता है।
yii\helpers\Url सहायक वर्ग कई उपयोगी तरीके भी प्रदान करता है।
Step 4 - संशोधित करें routes निम्नलिखित कोड में दिए अनुसार देखें।
<?php
use yii\helpers\Url;
?>
<h4>
<b>Url::home():</b>
<?php
// home page URL: /index.php?r=site/index
echo Url::home();
?>
</h4>
<h4>
<b>Url::base():</b>
<?php
// the base URL, useful if the application is deployed in a sub-folder of the Web root
echo Url::base();
?>
</h4>
<h4>
<b>Url::canonical():</b>
<?php
// the canonical URL of the currently requested URL
// see https://en.wikipedia.org/wiki/Canonical_link_element
echo Url::canonical();
?>
</h4>
<h4>
<b>Url::previous():</b>
<?php
// remember the currently requested URL and retrieve it back in later requests
Url::remember();
echo Url::previous();
?>
</h4>
Step 5 - अगर आप एड्रेस डालते हैं http://localhost:8080/index.php?r=site/routes वेब ब्राउज़र में, आप निम्नलिखित देखेंगे।