dcs/用户核心包

DCSUserCoreBundle 是一系列库的主要部分,帮助您完成管理用户时最常见的任务。

安装次数: 113

依赖项: 6

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

类型:symfony-bundle

dev-master / 1.0.x-dev 2017-01-01 09:39 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:09:47 UTC


README

Build Status Coverage Status

用户核心包

用户核心包 是一系列库的主要部分,帮助您完成管理用户时最常见的任务。

它提供了保存、删除和搜索单个用户的抽象操作。通过特定的事件来实现。

注意: 此包不提供操作的最终实现,但您必须添加和配置库(或创建自己的库),以确保命令的执行。

简介

此包提供了一些服务,这些服务本身并不发展整个操作逻辑,但需要外部服务来工作。

公开的服务列表如下

  • dcs_user.manager.save
  • dcs_user.manager.delete
  • dcs_user.factory
  • dcs_user.repository

服务

管理器

dcs_user.manager.savedcs_user.manager.delete 服务不执行保存或取消操作,但会发出一系列事件,可以用于执行实际操作。

工厂

dcs_user.factory 的任务是创建新的用户实例。

存储库

dcs_user.repository 只是一个暴露用户搜索方法的接口。它必须作为服务实现,并添加到包配置中。

事件

连接到由各种服务发出的事件的监听器将始终收到一个 DCS\User\CoreBundle\Event\UserEvent 实例。

事件的完整列表在 DCS\User\CoreBundle\DCSUserCoreEvents 类中。

DCS 包

已经开发了一些包,帮助您完成用户管理的常见任务

持久性

DCSUserPersistenceORMBundle

此包提供了使用 Doctrine ORM 在数据库上实现持久性的实现。 要求: DCSUserCoreBundle。

角色管理

DCSRoleCoreBundle

此包提供了角色管理的基本服务。 要求: DCSUserCoreBundle。

DCSRoleProviderORMBundle

此包提供了使用 Doctrine ORM 管理用户角色的功能。 要求: DCSRoleCoreBundle。

DCSRoleProviderArrayBundle

此包提供了将配置作为数组管理的角色管理功能。 要求: DCSRoleCoreBundle。

安全

DCSSecurityCoreBundle

此包提供了安全管理的基本服务。 要求: DCSUserCoreBundle。

DCSSecurityAuthFormBundle

此包提供了一个使用登录表单的认证系统。 要求: DCSSecurityCoreBundle。

密码重置管理

DCSPasswordResetCoreBundle

此包提供了执行完整密码更改请求流程的逻辑。 要求: DCSUserCoreBundle, DCSSecurityCoreBundle。

DCSPasswordResetPersistenceORMBundle

此包提供了使用 Doctrine ORM 实现所有密码请求的持久性。 要求: DCSPasswordResetCoreBundle。

DCSPasswordResetExplainViewBundle

此包通过视图和表单提供密码恢复服务的可视化显示。 要求: DCSPasswordResetCoreBundle。

先决条件

此版本的包需要 Symfony 2.8+。

安装

要求包

运行以下命令

$ composer require dcs/user-core-bundle "~1.0@dev"

Composer会将该捆绑包安装到您的项目目录vendor/dcs/user-core-bundle中。

启用捆绑包

在内核中启用捆绑包

<?php
// app/AppKernel.php

public function registerBundles()
{
	$bundles = array(
		// ...
		new DCS\User\CoreBundle\DCSUserCoreBundle(),
		// ...
	);
}

创建您的用户类

到目前为止,他从未提到过持久性。这是为什么?DCSUserCoreBundle不知道它们将如何实现保存和删除方法的逻辑。它允许完全的自由实现。

配置

现在您已正确启用此捆绑包,下一步是将它配置为与您应用程序的具体需求协同工作。

将以下配置添加到您的config.yml文件中。

dcs_user_core:
    model_class: Your\User\Class
    repository_service: your_repository_service

报告问题或功能请求

问题和功能请求在Github问题跟踪器中跟踪。