- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我创建了一个 symfony2 项目并使用了自定义身份验证提供程序 (http://symfony.com/doc/current/cookbook/security/custom_authentication_provider.html)。我的新任务是在 sylius 中创建一个电子商务应用程序,它应该与我当前的 symfony2 项目一起工作。我想将我当前在 symfony2 项目中的用户表作为 sylius 中的用户提供者...是否可以创建这样的项目...因为 fosUserBundle
和 fosOauthServer
bundel安装在 sylius 中,我如何使用我的自定义身份验证机制覆盖这些包
我的symfony2项目配置如下所述
我在 security.yml 中尝试了以下内容
security:
encoders:
AppBundle\Entity\Users:
algorithm: bcrypt
providers:
our_db_provider:
entity:
class: AppBundle:Users
api_key_user_provider:
id: api_key_user_provider
firewalls:
dev:
pattern: ^/(_(profiler|wdt|error)|css|images|js)/
security: false
api:
pattern: ^/api
stateless: true
simple_preauth:
authenticator: apikey_authenticator
provider: api_key_user_provider
web:
anonymous: ~
http_basic: ~
provider: our_db_provider
form_login:
login_path: /login
check_path: /login_check
这是我的用户类
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface;
/**
* Users
*
* @ORM\Table(name="users", uniqueConstraints= {@ORM\UniqueConstraint(name="users_user_name_unique", columns={"user_name"}), @ORM\UniqueConstraint(name="users_xmpp_password_unique", columns= {"xmpp_password"})})
* @ORM\Entity(repositoryClass="AppBundle\Entity\UsersRepository")
*/
class Users implements UserInterface, \Serializable {
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var integer
*
* @ORM\Column(name="parent_id", type="integer", nullable=false)
*/
private $parentId;
/**
* @var string
*
* @ORM\Column(name="first_name", type="string", length=100, nullable=false)
*/
private $firstName;
/**
* @var string
*
* @ORM\Column(name="last_name", type="string", length=100, nullable=false)
*/
private $lastName;
/**
* @var string
*
* @ORM\Column(name="user_name", type="string", length=120, nullable=false)
*/
private $userName;
/**
* @var string
*
* @ORM\Column(name="reg_type", type="string", length=20, nullable=false)
*/
private $regType;
/**
* @var string
*
* @ORM\Column(name="oauth_uid", type="string", length=255, nullable=false)
*/
private $oauthUid;
/**
* @var boolean
*
* @ORM\Column(name="active", type="boolean", nullable=false)
*/
private $active;
/**
* @var string
*
* @ORM\Column(name="email", type="string", length=100, nullable=false)
*/
private $email;
/**
* @var string
*
* @ORM\Column(name="password", type="string", length=150, nullable=false)
*/
private $password;
/**
* @var string
*
* @ORM\Column(name="xmpp_password", type="string", length=20, nullable=false)
*/
private $xmppPassword;
/**
* @var \DateTime
*
* @ORM\Column(name="created_at", type="datetime", nullable=false)
*/
private $createdAt = '0000-00-00 00:00:00';
/**
* @var \DateTime
*
* @ORM\Column(name="updated_at", type="datetime", nullable=false)
*/
private $updatedAt = '0000-00-00 00:00:00';
/**
* @var \DateTime
*
* @ORM\Column(name="deleted_at", type="datetime", nullable=true)
*/
private $deletedAt;
/**
* @var string
*
* @ORM\Column(name="activation_code", type="string", length=50, nullable=true)
*/
private $activationCode;
/**
* @var string
*
* @ORM\Column(name="user_profile_pic", type="string", length=200, nullable=false)
*/
private $userProfilePic = 'uploads/defaults/user/profile_pic.jpg';
/**
* @var string
*
* @ORM\Column(name="user_timeline_pic", type="string", length=200, nullable=false)
*/
private $userTimelinePic = 'uploads/defaults/user/timeline_pic.jpg';
/**
* @var string
*
* @ORM\Column(name="country", type="string", length=50, nullable=false)
*/
private $country;
/**
* @var string
*
* @ORM\Column(name="state", type="string", length=50, nullable=false)
*/
private $state;
/**
* @var string
*
* @ORM\Column(name="city", type="string", length=50, nullable=false)
*/
private $city;
/**
* @var string
*
* @ORM\Column(name="hobbies", type="string", length=100, nullable=false)
*/
private $hobbies;
/**
* @var string
*
* @ORM\Column(name="interests", type="string", length=100, nullable=false)
*/
private $interests;
/**
* @var string
*
* @ORM\Column(name="about", type="string", length=500, nullable=false)
*/
private $about;
/**
* @var boolean
*
* @ORM\Column(name="gender", type="boolean", nullable=false)
*/
private $gender;
/**
* @var \DateTime
*
* @ORM\Column(name="dob", type="date", nullable=false)
*/
private $dob;
/**
* @var integer
*
* @ORM\Column(name="quickblox_id", type="integer", nullable=false)
*/
private $quickbloxId;
/**
* @var boolean
*
* @ORM\Column(name="privacy", type="boolean", nullable=false)
*/
private $privacy = '0';
/**
* @var string
*
* @ORM\Column(name="school", type="string", length=255, nullable=false)
*/
private $school;
/**
* @var string
*
* @ORM\Column(name="college", type="string", length=255, nullable=false)
*/
private $college;
/**
* @var string
*
* @ORM\Column(name="work", type="string", length=255, nullable=false)
*/
private $work;
/**
* @var string
*
* @ORM\Column(name="relationship_status", type="string", length=50, nullable=false)
*/
private $relationshipStatus;
public function getSalt() {
// you *may* need a real salt depending on your encoder
// see section on salt below
return null;
}
public function getRoles() {
return array('ROLE_API');
}
public function eraseCredentials() {
}
/** @see \Serializable::serialize() */
public function serialize() {
return serialize(array(
$this->id,
$this->email,
// see section on salt below
// $this->salt,
));
}
/** @see \Serializable::unserialize() */
public function unserialize($serialized) {
list (
$this->id,
$this->email,
// see section on salt below
// $this->salt
) = unserialize($serialized);
}
/**
* Get id
*
* @return integer
*/
public function getId() {
return $this->id;
}
/**
* Set parentId
*
* @param integer $parentId
* @return Users
*/
public function setParentId($parentId) {
$this->parentId = $parentId;
return $this;
}
/**
* Get parentId
*
* @return integer
*/
public function getParentId() {
return $this->parentId;
}
/**
* Set firstName
*
* @param string $firstName
* @return Users
*/
public function setFirstName($firstName) {
$this->firstName = $firstName;
return $this;
}
/**
* Get firstName
*
* @return string
*/
public function getFirstName() {
return $this->firstName;
}
/**
* Set lastName
*
* @param string $lastName
* @return Users
*/
public function setLastName($lastName) {
$this->lastName = $lastName;
return $this;
}
/**
* Get lastName
*
* @return string
*/
public function getLastName() {
return $this->lastName;
}
/**
* Set userName
*
* @param string $userName
* @return Users
*/
public function setUserName($userName) {
$this->userName = $userName;
return $this;
}
/**
* Get userName
*
* @return string
*/
public function getUserName() {
return $this->email;
}
/**
* Set regType
*
* @param string $regType
* @return Users
*/
public function setRegType($regType) {
$this->regType = $regType;
return $this;
}
/**
* Get regType
*
* @return string
*/
public function getRegType() {
return $this->regType;
}
/**
* Set oauthUid
*
* @param string $oauthUid
* @return Users
*/
public function setOauthUid($oauthUid) {
$this->oauthUid = $oauthUid;
return $this;
}
/**
* Get oauthUid
*
* @return string
*/
public function getOauthUid() {
return $this->oauthUid;
}
/**
* Set active
*
* @param boolean $active
* @return Users
*/
public function setActive($active) {
$this->active = $active;
return $this;
}
/**
* Get active
*
* @return boolean
*/
public function getActive() {
return $this->active;
}
/**
* Set email
*
* @param string $email
* @return Users
*/
public function setEmail($email) {
$this->email = $email;
return $this;
}
/**
* Get email
*
* @return string
*/
public function getEmail() {
return $this->email;
}
/**
* Set password
*
* @param string $password
* @return Users
*/
public function setPassword($password) {
$this->password = $password;
return $this;
}
/**
* Get password
*
* @return string
*/
public function getPassword() {
return $this->password;
}
/**
* Set xmppPassword
*
* @param string $xmppPassword
* @return Users
*/
public function setXmppPassword($xmppPassword) {
$this->xmppPassword = $xmppPassword;
return $this;
}
/**
* Get xmppPassword
*
* @return string
*/
public function getXmppPassword() {
return $this->xmppPassword;
}
/**
* Set createdAt
*
* @param \DateTime $createdAt
* @return Users
*/
public function setCreatedAt($createdAt) {
$this->createdAt = $createdAt;
return $this;
}
/**
* Get createdAt
*
* @return \DateTime
*/
public function getCreatedAt() {
return $this->createdAt;
}
/**
* Set updatedAt
*
* @param \DateTime $updatedAt
* @return Users
*/
public function setUpdatedAt($updatedAt) {
$this->updatedAt = $updatedAt;
return $this;
}
/**
* Get updatedAt
*
* @return \DateTime
*/
public function getUpdatedAt() {
return $this->updatedAt;
}
/**
* Set deletedAt
*
* @param \DateTime $deletedAt
* @return Users
*/
public function setDeletedAt($deletedAt) {
$this->deletedAt = $deletedAt;
return $this;
}
/**
* Get deletedAt
*
* @return \DateTime
*/
public function getDeletedAt() {
return $this->deletedAt;
}
/**
* Set activationCode
*
* @param string $activationCode
* @return Users
*/
public function setActivationCode($activationCode) {
$this->activationCode = $activationCode;
return $this;
}
/**
* Get activationCode
*
* @return string
*/
public function getActivationCode() {
return $this->activationCode;
}
/**
* Set userProfilePic
*
* @param string $userProfilePic
* @return Users
*/
public function setUserProfilePic($userProfilePic) {
$this->userProfilePic = $userProfilePic;
return $this;
}
/**
* Get userProfilePic
*
* @return string
*/
public function getUserProfilePic() {
return $this->userProfilePic;
}
/**
* Set userTimelinePic
*
* @param string $userTimelinePic
* @return Users
*/
public function setUserTimelinePic($userTimelinePic) {
$this->userTimelinePic = $userTimelinePic;
return $this;
}
/**
* Get userTimelinePic
*
* @return string
*/
public function getUserTimelinePic() {
return $this->userTimelinePic;
}
/**
* Set country
*
* @param string $country
* @return Users
*/
public function setCountry($country) {
$this->country = $country;
return $this;
}
/**
* Get country
*
* @return string
*/
public function getCountry() {
return $this->country;
}
/**
* Set state
*
* @param string $state
* @return Users
*/
public function setState($state) {
$this->state = $state;
return $this;
}
/**
* Get state
*
* @return string
*/
public function getState() {
return $this->state;
}
/**
* Set city
*
* @param string $city
* @return Users
*/
public function setCity($city) {
$this->city = $city;
return $this;
}
/**
* Get city
*
* @return string
*/
public function getCity() {
return $this->city;
}
/**
* Set hobbies
*
* @param string $hobbies
* @return Users
*/
public function setHobbies($hobbies) {
$this->hobbies = $hobbies;
return $this;
}
/**
* Get hobbies
*
* @return string
*/
public function getHobbies() {
return $this->hobbies;
}
/**
* Set interests
*
* @param string $interests
* @return Users
*/
public function setInterests($interests) {
$this->interests = $interests;
return $this;
}
/**
* Get interests
*
* @return string
*/
public function getInterests() {
return $this->interests;
}
/**
* Set about
*
* @param string $about
* @return Users
*/
public function setAbout($about) {
$this->about = $about;
return $this;
}
/**
* Get about
*
* @return string
*/
public function getAbout() {
return $this->about;
}
/**
* Set gender
*
* @param boolean $gender
* @return Users
*/
public function setGender($gender) {
$this->gender = $gender;
return $this;
}
/**
* Get gender
*
* @return boolean
*/
public function getGender() {
return $this->gender;
}
/**
* Set dob
*
* @param \DateTime $dob
* @return Users
*/
public function setDob($dob) {
$this->dob = $dob;
return $this;
}
/**
* Get dob
*
* @return \DateTime
*/
public function getDob() {
return $this->dob;
}
/**
* Set quickbloxId
*
* @param integer $quickbloxId
* @return Users
*/
public function setQuickbloxId($quickbloxId) {
$this->quickbloxId = $quickbloxId;
return $this;
}
/**
* Get quickbloxId
*
* @return integer
*/
public function getQuickbloxId() {
return $this->quickbloxId;
}
/**
* Set privacy
*
* @param boolean $privacy
* @return Users
*/
public function setPrivacy($privacy) {
$this->privacy = $privacy;
return $this;
}
/**
* Get privacy
*
* @return boolean
*/
public function getPrivacy() {
return $this->privacy;
}
/**
* Set school
*
* @param string $school
* @return Users
*/
public function setSchool($school) {
$this->school = $school;
return $this;
}
/**
* Get school
*
* @return string
*/
public function getSchool() {
return $this->school;
}
/**
* Set college
*
* @param string $college
* @return Users
*/
public function setCollege($college) {
$this->college = $college;
return $this;
}
/**
* Get college
*
* @return string
*/
public function getCollege() {
return $this->college;
}
/**
* Set work
*
* @param string $work
* @return Users
*/
public function setWork($work) {
$this->work = $work;
return $this;
}
/**
* Get work
*
* @return string
*/
public function getWork() {
return $this->work;
}
/**
* Set relationshipStatus
*
* @param string $relationshipStatus
* @return Users
*/
public function setRelationshipStatus($relationshipStatus) {
$this->relationshipStatus = $relationshipStatus;
return $this;
}
/**
* Get relationshipStatus
*
* @return string
*/
public function getRelationshipStatus() {
return $this->relationshipStatus;
}
最佳答案
您可以在这里找到答案https://github.com/Sylius/Sylius/issues/2931 .
关于php - 替换 sylius 中的身份验证层和用户实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31041587/
都是整数,但一直报错 "Only assignment, call, increment, decrement, await, and new object expressions can be us
我有以下情况:一个“对话”实体/表,它有多个关联的标签。Tag 也是一个实体/表 - key/id 是 tagName(一个字符串)。 在客户端 (javascript),我在处理标签时使用字符串数组
我想通过 maven java 源代码生成器自动生成 java 源代码。我想通过查看一个大实体 xml 文件来创建实体类,该文件将包含系统中的所有实体和实体关系。据我搜索,目前maven中没有这样的插
我有一段时间有这个疑问,有人说 EJB 3.0 中没有所谓的实体 bean。有没有可能这样说,EJB 3.0 使用 JPA 来持久化数据并且没有对以前版本(EJB 2.1)中的实体 bean 进行增强
我观看了关于 Core Data 的 2016 WWDC 视频并查看了各种教程。我见过使用 Core Data Framework 创建对象以持久保存到 managedObjectContext 中的
实体(entites) 用于定义引用普通文本或特殊字符的快捷方式的变量,可在内部或外部进行声明 实体引用是对实体的引用 声明一个内部实体 语法: <!ENTITY 实体名称 "
This page建议 !ENTITY: If you want to avoid duplication, consider using XML entities (for example, [ ]
我正在努力解决这个问题:如何判断一个概念是聚合根还是只是一个实体(属于 AR 的一部分)? : 他们都有 ID 它们都是由实体或值对象组成 也许如果我需要引用其他 AR 中的实体,那么我需要将其设为
我使用 Symfony2 和 Doctrine,我有一个关于实体的问题。 出于性能方面的考虑,我想知道是否可以在不进行所有关联的情况下使用实体? 目前,我还没有找到另一种方法来创建继承带有关联的类的模
我已经尝试在 HTML 中包含以下代码,用于附加文件符号。但它显示一个空的白框。 📎 📎 📎 是否有替代的 HTML 附加文件符号实体? 如果没有,我们可以手动创建
我在 grails 中有一个域类......我如何让 gorm 在创建数据库时忽略这个实体?就别管它了。 最佳答案 如果我理解,你不想从域类创建表?如果是,请在域类中使用此代码: static map
我正在努力解决这个问题:如何判断一个概念是聚合根还是只是一个实体(属于 AR 的一部分)? : 他们都有 ID 它们都是由实体或值对象组成 也许如果我需要引用其他 AR 中的实体,那么我需要将其设为
我已经尝试在 HTML 中包含以下代码,用于附加文件符号。但它显示一个空的白框。 📎 📎 📎 是否有替代的 HTML 附加文件符号实体? 如果没有,我们可以手动创建
如何在我的实体中以 14-04-2017 格式存储日期? 但我必须从字符串中解析它。 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-
我需要从两个连接表中获取数据。数据集是什么类型?我是否需要创建一个包含这两个表中的属性的类以用于数据集类型,或者我可以使用实体模式中的类型。我如何修改我的方法才能正常工作? public static
好的,我们正在尝试建立一个中央站点来查看来自销售我们产品的多个供应商的数据。这些多个供应商使用不同的销售系统(确切地说是两个不同的系统),因此每个数据库看起来完全不同。我们与他们的数据库同步,因此数据
我是 backbone 的新手。但是当我研究模型实体时,我不明白一些事情。如果我们可以像 java 或 C# 这样的标准语言一样定义模型属性,那就太好了。有没有可能是这样的。所以我的想法是这样的: M
我想获取存储在可绘制的 xml 文件中的形状的颜色。 我来到了将 Drawable 存储在 Drawable 变量中的步骤,所以,现在我想获取形状的颜色(纯色标签)。 有什么建议吗? 最佳答案 Gra
实体是直接映射到我们的数据库(我们用于 Hibernate)的类。 在调用 DAO 之前,我们的服务类包含这些实体的业务逻辑。 我们还有命令对象,它们是与特定 View 相关的 POJO。有人告诉我实
在我的应用程序中,我需要显示不同存储过程返回的记录列表。每个存储过程返回不同类型的记录(即列数和列类型不同)。 我最初的想法是为每种类型的记录创建一个类,并创建一个函数来执行相应的存储过程并返回 Li
我是一名优秀的程序员,十分优秀!