我知道这个话题上有很多帖子.不幸的是,那些主要处理对数据库的实际持久操作.在我的情况下,我有一个问题发生在persist-operation之前:
我有一个带有(Doctrine)persistenceCollection实体的表单.您可以通过javascript从DOM中删除"对象".提交后,当在窗体上调用handleRequest时,调用我的实体中的函数,该函数从对象本身的集合中删除实体,并且调用它,因为我可以在调试器中检查:
/**
* Remove prices
*
* @param \Whizzpm\Bundle\Entity\Supplier\SupplierPrice $prices
*/
public function removePrice(\Whizzpm\Bundle\Entity\Supplier\SupplierPrice $prices)
{
$this->prices->removeElement($prices);
}
Run Code Online (Sandbox Code Playgroud)
这是$ price的定义:
/**
* @var
* @ORM\OneToMany(targetEntity="SupplierPrice", mappedBy="priceList", cascade={"all"})
*/
private $prices;
Run Code Online (Sandbox Code Playgroud)
基本思想是将更新后的实体与之前的状态进行比较,但在上述功能完成后,权利仍在集合中.
为了更精确:如果我在"removeElement($ prices)"之后检查$ this,它仍然包含应该被删除的对象.
也许这很重要:
供应商(主要实体)
price是应该删除元素(price item)的集合.
有什么想法吗?我可以在这个我不知道的问题上添加你需要的任何信息,哪个有意义,因为有负载.
我在我的项目中实现了 Symfony 的高级用户界面。它用于注册和登录用户。
现在我有额外的条件,我想在用户登录时检查。比如用户是否已经确认了他或她的电子邮件和/或其他条件。这些条件是用户实体的数据库/属性中的字段,因此很容易检查它们。
想象一下,我想向isEmailConfirmed()用户类添加一个函数,该函数的调用方式类似于isEnabled()高级用户界面中的函数。如果返回 true,则用户可以登录。如果它返回 false,我想限制访问并显示解决问题的消息。
--> 是否正确,在 中的checkPreAuth()函数中添加这样的函数Symfony\Component\Security\Core\User\UserChecker?我正在考虑使用类似的功能来挂钩checkCustomConditions()?