private function cacheAttributeItems($attribute) {
		$nameItems = [];
		$unsupportItems = [];

		$_attribute = lcfirst(str_replace(' ', '', ucwords(str_replace('_', ' ', $attribute)))) . 'Items';
		if($this->hasMethod($_attribute)) {
			$attributeitems = $this->$_attribute();

			$_defaultNameItems = $attributeitems[0];
			if($_defaultNameItems && is_array($_defaultNameItems)) {
				$_scenario = [];
				foreach($this->getActiveValidators($attribute) as $validator) {
					if($validator instanceof RangeValidator) {
						$_scenario = ArrayHelper::merge($_scenario, ArrayHelper::filter($_defaultNameItems, $validator->range));
					}
				}
				$nameItems[$this->scenario] = array_unique($_scenario);
				$nameItems['_default'] = $_defaultNameItems;
			}

			if(isset($attributeitems[1]) && is_array($attributeitems[1])) {
				$unsupportItems = $attributeitems[1];
			}
		}

		$this->_attributeNameItemsList[$attribute] = $nameItems;
		$this->_attributeUnsupportItemsList[$attribute] = $unsupportItems;
	}