在yii2的视图中添加自定义字段,该字段不在模型中

时间:2015-11-28 10:36:26

标签: php yii2

我在yii2中保存表单时出现问题。

我创建了一个自定义字段,其名称与其他字段 Animation animanim1 = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.anim1); Animation animanim2 = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.anim2); Animation animanim3 = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.anim3); imag1.startAnimation(animanim1); imag2.startAnimation(animanim2); imag3.startAnimation(animanim3); 一样。此字段不在模型中。这是一个有条件的领域。当我发布我的时,我将其值赋给模型属性,如:

Myposts['categoryLevel2']

现在因为categoryLevel3不在表格帖子中,所以它给出了错误。 获取未知属性:前端\模型\帖子 我知道这个问题。该错误是因为在$categoryLevel3 = $request->post('categoryLevel3'); if(!empty($categoryLevel3)){ $model->category=$categoryLevel3; } 数组中现在有一个字段$_POST而且它不在表中,因此categoryLevel3会抛出异常。我试过了$model->save(),但这也行不通。任何人都可以帮我吗?

如何在视图中创建一个不在表格中的字段并在unset($_POST['categoryLevel3'))之前忽略它?

1 个答案:

答案 0 :(得分:2)

在您的帖子模型类中添加公共属性'categoryLevel3

 class Post extends yii\db\ActiveRecord{
   public $categoryLevel3;

   public function rules(){

       return [

          [''categoryLevel3' , 'required']
   ...
           ];

     }
   }