本文整理汇总了PHP中CModel::isAttributeRequired方法的典型用法代码示例。如果您正苦于以下问题:PHP CModel::isAttributeRequired方法的具体用法?PHP CModel::isAttributeRequired怎么用?PHP CModel::isAttributeRequired使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CModel
的用法示例。
在下文中一共展示了CModel::isAttributeRequired方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setupBelongsTo
protected function setupBelongsTo($relationDetails)
{
// get and verify the relation foreign key field
if (isset($relationDetails[2]) && $relationDetails[2]) {
$this->_modelAttribute = $relationDetails[2];
} else {
throw new CException(Yii::t('yii', 'The {relation} relation in {model} does not specify a foreign key field for the {class} widget.', array('{relation}' => $this->relation, '{model}' => get_class($this->model), '{class}' => get_class($this))));
}
// see if empty is allowed
if ($this->model->isAttributeRequired($this->_modelAttribute)) {
$this->allowEmpty = false;
}
// set up the name and ID for the widget
$this->resolveWidgetName();
// sets the right name for the multi widget
$this->resolveWidgetId();
// sets the right id for the multi widget
// attributes to pass to widget
$widgetAttrs = array();
// set default values based on data type
if ($this->widgetDataFormat == self::DATA_FORMAT_TEXT) {
$widgetAttrs['htmlOptions'] = array('value' => $this->getRelatedData()->{$this->relationDisplayField});
} else {
// self::DATA_FORMAT_ARRAY
$widgetAttrs['value'] = $this->getAllRelatedListData();
}
// set up variables for the widget
$widgetAttrs['model'] = $this->model;
$widgetAttrs['attribute'] = $this->_modelAttribute;
// merge the widget properties
$this->widgetProperties = CMap::mergeArray($this->widgetProperties, $widgetAttrs);
}
示例2: isAttributeRequired
/**
* Override to properly check if the attribute is required or not.
* (non-PHPdoc)
* @see CModel::isAttributeRequired()
*/
public function isAttributeRequired($attribute)
{
if (property_exists($this, $attribute)) {
return parent::isAttributeRequired($attribute);
}
return $this->model->isAttributeRequired($attribute);
}