Maison  >  Article  >  développement back-end  >  Yii implémente deux méthodes pour ajouter des valeurs par défaut au modèle

Yii implémente deux méthodes pour ajouter des valeurs par défaut au modèle

不言
不言original
2018-05-03 16:01:051385parcourir

Cet article présente principalement la méthode d'ajout de valeurs par défaut​​dans le modèle d'implémentation de Yii. Il analyse deux techniques d'implémentation dans la méthode Rules() et la méthode beforeSave() sur la base d'exemples. Les amis dans le besoin peuvent s'y référer.

L'exemple de cet article décrit comment Yii implémente la méthode d'ajout de valeurs par défaut au modèle. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Le modèle yii hérite de CActiveRecord

Certains champs peuvent ne pas apparaître dans le formulaire, mais doivent être ajoutés dans le programme Ajouter . Tels que le numéro de commande, l'horodatage, l'identifiant utilisateur de l'opération, etc.

Les deux méthodes suivantes :

1. Définissez la méthode Rules() :

public function rules()
{
  // NOTE: you should only define rules for those attributes that
  // will receive user inputs.
  return array(
    array('start, end', 'required'),
    array('user_id', 'numerical', 'integerOnly'=>true),
    array('timestamp','default','value'=>date('Y-m-d H:i:s')),
    // The following rule is used by search().
    // Please remove those attributes that should not be searched.
    array('id, start, end, user_id, timestamp', 'safe', 'on'=>'search'),
  );
}

2. Définissez dans la méthode beforeSave() :

function beforeSave()
{
  $this->user_id = Yii::app()->user->id;
  return true;
}

Il convient de noter que, La méthode beforeSave() doit renvoyer true, sinon ne sera pas enregistré.

Recommandations associées :

Explication détaillée des propriétés dans Yii

Introduction connexe à l'utilisation de Memcache dans YII

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn