Yii2實現(xiàn)中國省市區(qū)三級聯(lián)動實例
1、獲取源碼:yii2-region_jb51.rar
2、安裝
添加到你的composer.json文件
"chenkby/yii2-region": "dev-master"
切換到項目目錄
composer update;
3、配置
1) 在地區(qū)的Model中添加以下方法
public static function getRegion($parentId=0)
{
$result = static::find()->where(['parent_id'=>$parentId])->asArray()->all();
return ArrayHelper::map($result, 'id', 'name');
}
2) 在controller中添加以下action
public function actions()
{
$actions=parent::actions();
$actions['get-region']=[
'class'=>\chenkby\region\RegionAction::className(),
'model'=>\app\models\Region::className()
];
return $actions;
}
3) 在common/config里的main.php中添加 urlManager的enablePrettyUrl的,即隱藏index.php
"urlManager" => [
//用于表明urlManager是否啟用URL美化功能,在Yii1.1中稱為path格式URL,
// Yii2.0中改稱美化。
// 默認(rèn)不啟用。但實際使用中,特別是產(chǎn)品環(huán)境,一般都會啟用。
"enablePrettyUrl" => true,
// 是否啟用嚴(yán)格解析,如啟用嚴(yán)格解析,要求當(dāng)前請求應(yīng)至少匹配1個路由規(guī)則,
// 否則認(rèn)為是無效路由。
// 這個選項僅在 enablePrettyUrl 啟用后才有效。
"enableStrictParsing" => false,
// 是否在URL中顯示入口腳本。是對美化功能的進(jìn)一步補(bǔ)充。
"showScriptName" => false,
// 指定續(xù)接在URL后面的一個后綴,如 .html 之類的。僅在 enablePrettyUrl 啟用時有效。
"suffix" => "",
"rules" => [
"<controller:\w+>/<id:\d+>"=>"<controller>/view",
"<controller:\w+>/<action:\w+>"=>"<controller>/<action>"
],
],
4、使用
<?= $form->field($model, 'district')->widget(\chenkby\region\Region::className(),[
'model'=>$model,
'url'=> \yii\helpers\Url::toRoute(['get-region']),
'province'=>[
'attribute'=>'province',
'items'=>Region::getRegion(),
'options'=>['class'=>'form-control form-control-inline','prompt'=>'選擇省份']
],
'city'=>[
'attribute'=>'city',
'items'=>Region::getRegion($model['province']),
'options'=>['class'=>'form-control form-control-inline','prompt'=>'選擇城市']
],
'district'=>[
'attribute'=>'district',
'items'=>Region::getRegion($model['city']),
'options'=>['class'=>'form-control form-control-inline','prompt'=>'選擇縣/區(qū)']
]
]);
?>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于laravel-admin 后臺 列表標(biāo)簽背景的使用方法
今天小編就為大家分享一篇基于laravel-admin 后臺 列表標(biāo)簽背景的使用方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
php中static 靜態(tài)變量和普通變量的區(qū)別
靜態(tài)變量與普通變量的區(qū)別在哪里呢,對于許多初學(xué)php的朋友來講可能不是點擊的明白了,今天我們來看看php中static 靜態(tài)變量和普通變量的區(qū)別吧,需要的朋友可以參考下2016-12-12
php實現(xiàn)utf-8轉(zhuǎn)unicode函數(shù)分享
這篇文章主要介紹了php實現(xiàn)utf-8轉(zhuǎn)unicode函數(shù)分享,需要的朋友可以參考下2015-01-01
PHP 超高性能可擴(kuò)展HTTP服務(wù)框架Webman
本文主要介紹了超高性能可擴(kuò)展HTTP服務(wù)框架Webman,webman用于替代傳統(tǒng)的php-fpm架構(gòu),提供超高性能可擴(kuò)展的HTTP服務(wù),感興趣的可以了解一下2024-02-02

