当前位置: 首页>>代码示例>>PHP>>正文


PHP User::creating方法代码示例

本文整理汇总了PHP中RainLab\User\Models\User::creating方法的典型用法代码示例。如果您正苦于以下问题:PHP User::creating方法的具体用法?PHP User::creating怎么用?PHP User::creating使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在RainLab\User\Models\User的用法示例。


在下文中一共展示了User::creating方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: boot

 /**
  * {@inheritDoc}
  */
 public function boot()
 {
     // Handle locations upon login
     $this->registerLocation();
     // Register timezone settings
     date_default_timezone_set(Settings::get('timezone', Config::get('app.timezone')));
     // Register ServiceProviders
     App::register('DMA\\Friends\\FriendsServiceProvider');
     App::register('Maatwebsite\\Excel\\ExcelServiceProvider');
     // Register aliases
     $alias = AliasLoader::getInstance();
     $alias->alias('Excel', 'Maatwebsite\\Excel\\Facades\\Excel');
     // Register Event Subscribers
     $subscriber = new FriendsEventHandler();
     Event::subscribe($subscriber);
     // Bind user and point events to trigger user synchronization with MailChimp
     MailChimpIntegration::bindEvents();
     // Generate barcode_id when a user object is created
     // TODO: Migrate when user plugin is forked
     User::creating(function ($user) {
         if (empty($user->barcode_id)) {
             $user->barcode_id = substr(md5($user->email), 0, 9);
         }
     });
     // Extend the user model to support our custom metadata
     User::extend(function ($model) {
         $model->hasOne['metadata'] = ['DMA\\Friends\\Models\\Usermeta', 'key' => 'user_id'];
         $model->hasMany['activityLogs'] = ['DMA\\Friends\\Models\\ActivityLog'];
         $model->hasMany['bookmarks'] = ['DMA\\Friends\\Models\\Bookmark'];
         $model->hasMany['notifications'] = ['DMA\\Friends\\Models\\Notification'];
         $model->hasMany['rates'] = ['DMA\\Friends\\Models\\UserRate'];
         $model->belongsToMany['activities'] = ['DMA\\Friends\\Models\\Activity', 'table' => 'dma_friends_activity_user', 'user_id', 'activity_id', 'timestamps' => true, 'order' => 'dma_friends_activity_user.created_at desc'];
         $model->belongsToMany['steps'] = ['DMA\\Friends\\Models\\Step', 'table' => 'dma_friends_step_user', 'user_id', 'step_id', 'timestamps' => true, 'order' => 'dma_friends_step_user.created_at desc'];
         $model->belongsToMany['badges'] = ['DMA\\Friends\\Models\\Badge', 'table' => 'dma_friends_badge_user', 'user_id', 'badge_id', 'timestamps' => true, 'order' => 'dma_friends_badge_user.created_at desc'];
         $model->belongsToMany['rewards'] = ['DMA\\Friends\\Models\\Reward', 'table' => 'dma_friends_reward_user', 'user_id', 'reward_id', 'timestamps' => true, 'order' => 'dma_friends_reward_user.created_at desc'];
         $model->belongsToMany['groups'] = ['DMA\\Friends\\Models\\UserGroup', 'table' => 'dma_friends_users_groups', 'key' => 'user_id', 'foreignKey' => 'group_id', 'pivot' => ['membership_status']];
     });
     // Extend User fields
     $context = $this;
     Event::listen('backend.form.extendFields', function ($widget) use($context) {
         $context->extendedUserFields($widget);
         $context->extendedSettingFields($widget);
     });
     Event::listen('backend.list.extendColumns', function ($widget) {
         if (!$widget->getController() instanceof \RainLab\User\Controllers\Users) {
             return;
         }
         $widget->addColumns(['barcode_id' => ['label' => 'Barcode ID'], 'full_name' => ['label' => 'Full Name', 'relation' => 'metadata', 'sortable' => false, 'select' => "concat(first_name, ' ', last_name)", 'searchable' => true], 'first_name' => ['label' => 'First Name', 'relation' => 'metadata', 'select' => '@first_name', 'searchable' => true], 'last_name' => ['label' => 'Last Name', 'relation' => 'metadata', 'select' => '@last_name', 'searchable' => true], 'points' => ['label' => 'Points'], 'zip' => ['label' => 'Zip'], 'current_member_number' => ['label' => 'Membership ID', 'relation' => 'metadata', 'select' => '@current_member_number']]);
     });
 }
开发者ID:janusnic,项目名称:OctoberFriends,代码行数:53,代码来源:Plugin.php


注:本文中的RainLab\User\Models\User::creating方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。