>  기사  >  백엔드 개발  >  Yii2의 사용 시나리오를 간략하게 소개합니다.

Yii2의 사용 시나리오를 간략하게 소개합니다.

怪我咯
怪我咯원래의
2017-06-16 11:06:211383검색

이 글은 주로 Yii2의 간단한 시나리오 사용에 대한 관련 정보를 소개합니다. 글의 소개는 매우 상세하며 필요한 친구들은 편집자를 따라 함께 배울 수 있습니다.

이 글은 주로 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🎜🎜🎜결과는 다음과 같습니다. 사용자 이름은 확인되지 않고 비밀번호는 확인됩니다🎜🎜또한 model scenarios() 메서드를 사용하고 컨트롤러에서 장면을 호출하는 경우 호출된 장면 이름이 시나리오() 메서드에 있어야 하며, 그렇지 않으면 오류가 발생합니다! 🎜

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

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