Какую Модель Использовать?

Здравствуйте. Я пишу модуль погоды. Мне нужно от модели, чтобы она получала данные от внешнего источника (api), сохраняла их в кеш и доставала их из кеша. Собственно всё. В Yii 1 есть два типа модели, FormModel для работы с формами и AR для работы с БД. Мне ни с тем ни с другим работать не нужно, вопрос что использовать в моем случае ? FormModel ? Поделитесь пожалуйста опытом, в уии новичек. Спасибо.

Если не нужно ни с тем ни с другим, то не наследуй свою модель ни от чего, в чем проблема?

Либо можно сделать компонент, в котором реализовать получение данных, сохранение и вытягивание из кэша, а модель унаследовать от компонента. Ну или действительно просто модель без наследования чего либо.

Ну базовая http://www.yiiframework.com/doc/api/1.1/CModel еще есть, но, опять же, оно Вам нужно?..

Я бы использовал не модуль, а экстеншн. В нем создаешь базовый класс с набором методов, которые обращаются к API и унаследовал бы его от CApplicationComponent.

Пример:


class WeatherComponent extends CApplicationComponent

{

    public function getCityTemperature($city)

    {

        // code...

    }

}

Далее уже в своем приложении(в контроллерах, компонентах и т.д.) используешь этот компонент:


Yii::app()->weather->getCityTemperature('Moscow');

Не забудь в конфиг файле прописать настройки Weather extension:


$config['import'] = 'application.extensions.weather-extension.*',


$config['components']['weather']['class'] = 'WeatherComponent';