秀小川

秀小川

这家伙有点懒,还没写个性签名!

  • 财富值455
  • 威望值0
  • 总积分655

个人信息

  • 回复了 的回答
    use yii\validators\Validator;
    class SettingValidator extends Validator
    {
        protected $ErrorMsg = '主键重复!!';
    
        /**
         *
         * 服务端验证
         *
         * @param \yii\base\Model $model
         * @param string $attribute
         */
        public function validateAttribute($model, $attribute)
        {
            $exist = Setting::find()->where([$attribute=>$model->key])->one();
            if($exist) {
                $this->addError($model, $attribute, $this->ErrorMsg);
            }
        }
    
        /**
         *
         * 客户端验证
         *
         * @param \yii\base\Model $model
         * @param string $attribute
         * @param \yii\web\View $view
         * @return null|string
         */
        public function clientValidateAttribute($model, $attribute, $view)
        {
            $message = $this->ErrorMsg;
            return <<<JS
    messages.push('{$message}');
    JS;
        }
    

    $model->key

    key 是你的主键字段!

    使用:(模型验证规则里引入)

        {
            return [
                 [['name'], SettingValidator::className(),'message'=>1111],
             ];
       }```
    
    
    

    这也是个好方法! 比我那个科学!

  • 2017-11-27 已签到
    连续签到2天,获得了10个金钱
  • 2017-11-26 已签到
    连续签到1天,获得了5个金钱
  • 回复了 的回答

    模型加个属性$money_100,rules 加 [['$money_100'],'safe'],传值

    @mercis就是用的ActionForm, 你说的这种我还不太懂!

  • 回复了 的回答

    模型加个属性$money_100,rules 加 [['$money_100'],'safe'],传值

    多谢, 搞定了!

  • 2017-11-23 已签到
    连续签到5天,获得了20个金钱
  • 2017-11-22 已签到
    连续签到4天,获得了20个金钱
  • TIM图片20171122100649.png

    类似于这种效果的选择框

  • 回复了 的回答

    这是效果图:
    微信截图_20171121175700.png
    代码:

    <?php $form = zActiveForm::begin([
        'action' => ['index'],
        'method' => 'get',
        'options' => ['data-pjax' => 'pjax-list'],
        'enableClientValidation' => false
    ]); ?>
    
        <div class="dis_search">
            <div class="form-inline search_first">
    
                <?= $form->field($model, 'date_type')->dropDownList(searchOrderMain::$date_type_array)->label(null, ['Yii' => 'normal'])->error(false) ?>
    
                <?= $form->field($model, 'date_from', ['options' => ['class' => 'input-group date form_date']])->textInput(['unit' => '<span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>'])->label(false)->error(false) ?>
                --
                <?= $form->field($model, 'date_to', ['options' => ['class' => 'input-group date form_date']])->textInput(['unit' => '<span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>'])->label(false)->error(false) ?>
                <?= $form->field($model, 'hotel_name')->textInput(['placeHolder' => '酒店名称'])->label('酒店名称', ['Yii' => 'normal'])->error(false) ?>
                <?= $form->field($model, 'channel_id')->dropDownList(ArrayHelper::map($model_list, 'ID', 'SUPPLIER_NAME'), ['prompt' => '请选择', 'class' => 'form-control select_screen', 'style' => 'width:172px;'])->label('销售渠道', ['Yii' => 'normal'])->error(false) ?>
            </div>
            <div class="form-inline search_second">
                <?= $form->field($model, 'diret_flag')->dropDownList([0 => '请选择', 556 => '直连订单', 557 => '非直连订单'])->label('订单类型', ['Yii' => 'normal'])->error(false) ?>
                <?= $form->field($model, 'confirm_num')->dropDownList([0 => '请选择', 1 => '有', 2 => '无'])->label('确认号', ['Yii' => 'normal'])->error(false) ?>
                <?= $form->field($model, 'search_key')->textInput(['placeHolder' => '订单号/渠道订单号/客人姓名/客人电话', 'style' => 'width:250px;'])->label('更多查询', ['Yii' => 'normal'])->error(false) ?>
                <?= $form->field($model, 'ORDER_STATUS')->hiddenInput()->label(false)->error(false) ?>
                <?= $form->field($model, 'CHANNEL_ORDER_STATUS')->hiddenInput()->label(false)->error(false) ?>
                <div class="form-group search_button">
                    <?= Html::submitButton('<span class="glyphicon glyphicon-search"></span> 查询', ['class' => 'btn btn-primary left-20 loading-form', 'id' => 'search-button', 'onclick' => 'loading()']) ?>
                    <?= Html::button('<span class="glyphicon glyphicon-save"></span> 导出订单', ['class' => 'btn btn-primary ', 'onclick' => 'z.exportExcel(\'form\', \'/hotel/ordermain/export\')']) ?>
                </div>
            </div>
    
        </div>
    <?php zActiveForm::end(); ?>
    

    这是我的项目里面的,没时间整理,提交的时候就会提交到你渲染这个页面的那个控制器了,当然你也可以自定义,类似于这样:

     <?php $form = zActiveForm::begin(['action' => '/hotel/hotel-room/set-bed-type', 'options' => ['class' => 'form-horizontal', 'data-pjax' => true]]); ?>
    

    谢谢你的回复
    我想的是另外一个效果, 看下我问题补冲

  • 我现在用了rule验证来解决

    ['username', 'unique', 'targetClass' => 'rbac\models\User', 'message' => '用户名已存在.']
    
主管 等级规则
655/1000
资料完整度
10/100
用户活跃度
0/100

Ta的关注

1

Ta的粉丝

1

Ta的访客

5