Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Migration;
- use Storage\Schema;
- /**
- * Migration was generated at 18.03.2014 11:34:24
- */
- class ModulePerson_20140318_113424
- {
- public function process(Schema $schema)
- {
- $person = $schema->createModel('person', 'Пользователь', array(
- 'login' => 'Имя пользователя',
- 'salt' => 'Соль для вычисления хэша',
- 'hash' => 'Полученный хэш',
- ));
- $person->createIndex('login');
- $person->createBehaviour('log');
- $module = $schema->createModel('module', 'Модуль', array(
- 'name' => 'Наименование'
- ));
- // favorite modules link
- $favorite_module = $schema->createLink(array(
- $person,
- 'favorite_module' => $module,
- ));
- $favorite_module->addProperty('rating', array(
- 'comment' => 'Рейтинг',
- 'type' => 'integer'
- ));
- // module developers link
- $schema->createLink(array(
- $module,
- 'developer' => $person,
- ));
- // default user module
- $schema->getModel('person')
- ->hasOne('module')
- ->usingAlias('default_module')
- ->referencedBy('default_user')
- ;
- // module owner
- $module
- ->hasOne('person')
- ->usingAlias('owner')
- ->referencedBy('own_module')
- ;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement