>백엔드 개발 >PHP 튜토리얼 >Yii2의 시나리오에 대한 간략한 소개

Yii2의 시나리오에 대한 간략한 소개

*文
*文원래의
2018-01-03 13:38:491062검색

이 글은 주로 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

yii2

yii 프레임 워크가 사용자 정의 파일에 로그를 구현하는 방법에 대한 설명 된 설명에 대한 설명이 있습니다. Yii2 양식 위젯

위 내용은 Yii2의 시나리오에 대한 간략한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.