이 글은 주로 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()
또한 model scenarios()
메서드를 사용하고 컨트롤러에서 장면을 호출하는 경우 호출된 장면 이름이 시나리오() 메서드에 있어야 하며, 그렇지 않으면 오류가 발생합니다!
위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!
관련 권장 사항:
yii2는 검색 기능으로 페이징 및 페이징을 구현합니다.
🎜🎜🎜Yii 프레임워크를 구현하여 페이지에서 SQL 문을 출력 및 실행하고 디버그하는 방법 🎜🎜🎜🎜🎜🎜🎜🎜🎜위 내용은 Yii2의 간단한 장면 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!