이 글은 주로 Yii2의 간단한 시나리오 사용에 대한 관련 정보를 소개합니다. 글의 소개는 매우 자세하며 필요한 친구들은 편집자를 따라가서 함께 배울 수 있습니다. 그것이 모두에게 도움이 되기를 바랍니다.
코드(주요 부분)로 바로 이동:
모델 레이어:
public function rules() { return [ [['name', 'account', 'pwd'], 'string', 'max' => 11], ['account','required','message'=>'用户名不能为空'], ['pwd','required','message'=>'密码不能为空','on'=>'update'] ]; }
컨트롤러:
$model = new User(); if(isset($_POST['User'])){ $model -> attributes = Yii::$app->request->post('User'); $model -> save(); }
현재 컨트롤러에서는 장면이 호출되지 않습니다. 결과는 다음과 같습니다: 사용자 이름은 확인되었지만 비밀번호는 확인되지 않았습니다
컨트롤러에 $model->scenario='update';
를 추가하면 결과는 다음과 같습니다. 사용자 이름과 비밀번호가 확인되었습니다. $model->scenario='update';
其结果是:用户名,密码都验证了
如果这个时候再在模型加上几句代码:
public function scenarios() { return [ 'update'=>['pwd'],//在该场景下的属性进行验证,其他场景和没有on的都不会验证 ]; }
其结果是:用户名没有验证,密码验证了
还有要注意如果你在模型里重写了scenarios()
이때 모델에 몇 줄의 코드를 추가하면
rrreee결과는 다음과 같습니다. 사용자 이름은 확인되지 않고 비밀번호는 확인됩니다또한 모델에서 를 다시 작성할 경우 주의하세요. 시나리오()
메소드는 컨트롤러에서 장면을 호출하며, 호출된 장면 이름은 시나리오() 메소드에 존재해야 합니다. 그렇지 않으면 오류가 발생합니다! Related Related 권장 사항 : yii2
yii 프레임 워크가 사용자 정의 파일에 로그를 구현하는 방법에 대한 설명 된 설명에 대한 설명이 있습니다. Yii2 양식 위젯
위 내용은 Yii2의 시나리오에 대한 간략한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!