如何在yii中使用相同模型的相同元素?

时间:2012-07-03 05:23:35

标签: php yii

我是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;

但这会产生问题,因为它们都具有相同的名称和验证也无济于事。请提供任何解决方案。

提前致谢。

2 个答案:

答案 0 :(得分:1)

使用scenario`s卢克。

  

方案是一种非常有用的工具,用于在使用从CModel派生的任何类上分离验证任务。在本教程中,我们将使用CActiveRecord。

答案 1 :(得分:1)

对于此特定任务,您需要使用其他人提到的方案。Understanding Scenarios。一旦在model中定义了这些,您只需要创建具有所需方案的类的实例

例如你可以做

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

当使用相同的$studentModel验证表格进行渲染时会有所不同

相关问题