Pull to refresh
1
0
Петр Загваздин @PZagvazdin

User

Send message

Использование ActiveRecord от Yii в игре тайм менеджере

Reading time6 min
Views7.5K
Всем привет!

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

Напомню, что в проекте используется php(Yii), mysql и memcached. В проекте достаточно много сущностей, для каждой из которой есть своя модель, которая наследуется от CActiveRecord.

Хранятся файлы моделей следующим образом. В папке models создаем папку base. Когда генерируем модель через Gii, то указываем, что ее нужно положить в папку models/base и к имени класса добавляем Base. Затем создаем в models аналогичный класс без Base, который наследуется от базового класса и имеет в себе лишь метод model().

Кстати заранее скажу, что базовые модели наследуем не от CActiveRecord, а от ExtActiveRecord — расширяем CActiveRecord под наши нужды. Но об этом позже. Пока что разницы никакой.

Пример:
models/base/BaseUser.php — стандартный класс, который генерируется через Gii
models/User.php — класс, который наследуется от BaseUser и имеет в себе метод model()
	/**
	 * Returns the static model of the specified AR class.
	 * @param string $className active record class name.
	 * @return User the static model class
	 */
	public static function model($className=__CLASS__) {
		return parent::model($className);
	}
	



Данная схема используется для того, чтобы в случае повторной генерации файла модели не потерять свой код и просто не забивать пространство стандартным кодом от Yii.

Не забываем добавить в конфиге 'application.models.base.*'.

Перейдем собственно к теме поста и поставим задачи, которые хотим решить:
  1. Уменьшить количество запросов в базу на обновление
  2. Уменьшить количество запросов в базу на выборку


Читать далее
Total votes 11: ↑9 and ↓2+7
Comments26

Анонсы Alawar: движок HTML5-игр, поддержка IE9 pinned site и собственная сборка браузера

Reading time2 min
Views13K
image

Компанию Alawar можно без преувеличения назвать крупнейшим российским разработчиком казуальных игр для множества платформ, в том числе социальных сетей. Сегодня я очень рад озвучить ряд анонсов Alawar и представить вам новинки, которые компания подготовила в сотрудничестве с Microsoft.

В первую очередь я очень рад представить вам видео-анонс нового HTML5-движка компании, который будет использоваться в будущих проектах Alawar. Я думаю, многие из вас будут рады узнать, что Alawar присоединилась к лагерю разработчиков HTML5-игр и разработке богатых приложений на современных веб-стандартах. Ниже представлено видео, которое впервые было показано в рамках конференции TechEd Russia 2011 на треке докладов по инструментам и языкам программирования.



Ниже вы можете узнать про другие анонсы от Alawar: новый сайт с функцией закрепления на панели задач Windows 7 и сборку браузера Internet Explorer 9 с быстрым доступом к играм компании.

Читать дальше →
Total votes 41: ↑27 and ↓14+13
Comments34

Information

Rating
Does not participate
Location
Praha, Hlavni Mesto Praha, Чехия
Date of birth
Registered
Activity