1

私は yii を初めて使用します。私は、学生の教育の詳細を取得する必要がある登録フォームを持っているフォームを開発しています。それが含まれています

                'Post Graduation',
                'Graduation' and 
                'Schooling' 

詳細。これにはそれぞれ、合格年、資格などのフィールドがあります。

public function attributeLabels()
    {
        return array(
            'id' => 'ID',
            'user_id' => 'User',
            'qualification_id' => 'Qualification',
            'specialization_id' => 'Specialization',
            'pass_year' => 'Pass Year',
            'university_id' => 'University',
            'duration_from' => 'Duration From',
            'duration_to' => 'Duration To',
            'percentage_marks' => '% of Marks / GPA',
            'course_type_id' => 'Course Type',
            'awards' => 'Awards & Scholarships',
        );
    }

同じモデルを使用して同様の要素を作成し、これらの詳細を個別に取得するにはどうすればよいですか

                'Post Graduation',
                'Graduation' and 
                'Schooling' 

モデル用にさまざまなオブジェクトを作成し、それらをフォームに含めてみました。

    $postGraduate = new CandidateQualification;
    $graduate = new CandidateQualification;
    $preGraduate = new CandidateQualification;

しかし、これはすべてが同じ名前を持ち、検証も役に立たないため、問題を引き起こします。解決策を教えてください。

前もって感謝します。

4

2 に答える 2

1

シナリオのルークを使用。

シナリオは、使用する CModel から派生したクラスの検証タスクを分離するための非常に便利なツールです。このチュートリアルでは、CActiveRecord を使用します。

于 2012-07-03T05:46:05.760 に答える
1

この特定のタスクでは、他の人が述べたようにシナリオを使用する必要があります。シナリオを理解する。これらを定義したらmodel、必要なシナリオでクラスのインスタンスを作成するだけです

たとえば、あなたがすることができます

$studentModel = new student('pregrad');
$studentModel = new student('grad');
$studentModel = new student('postgrad');

$studentModel同じ検証を使用してフォームがレンダリングされるたびに、異なるものになります

于 2012-07-03T06:23:00.580 に答える