我正在尝试设置自定义列排序规则,如Doctrine文档中所示:
运用
@ORM\Column(name="body", type="string", length=140, options={"customSchemaOptions"={"collate"="utf8mb4_unicode_ci"}})
但是当我更新架构时,它总是返回到utf8_unicode_ci(当我手动设置它时).有任何想法吗?
我正在尝试查询批量删除,但是显然它没有执行JOIN操作。有什么想法吗?
$queryBuilder = $em
->createQueryBuilder()
->delete('Bundle:ClassA', 'a')
->join('a.classB', 'b')
->where('b = :parent')
->setParameter('parent', $parent);
$queryBuilder->getQuery()->execute();
Run Code Online (Sandbox Code Playgroud)
返回:
“ [语义错误]第0行,'b =:parent AND'附近的第38列:错误:'b'未定义。”
我已经按照书中的每一步,但我无法开始工作任何实体自定义存储库.
例如,我有我的用户实体:
/**
* @ORM\Table("fos_user")
* @ORM\Entity(repositoryClass="XXX\UserBundle\Repository\UserRepository")
*/
class User extends BaseUser implements ParticipantInterface
{
}
Run Code Online (Sandbox Code Playgroud)
它的存储库类:
namespace XXX\UserBundle\Repository;
use Doctrine\ORM\EntityRepository;
/**
* UserRepository
*
* This class was generated by the Doctrine ORM. Add your own custom
* repository methods below.
*/
class UserRepository extends EntityRepository
{
public function initializeUser()
{
//some logic
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我调用$ user-> initializeUser(); 我得到致命错误:调用未定义的方法XXX\UserBundle\Entity\User :: initializeUser(),因此很明显它无法识别自定义存储库,即使我已在实体类上声明它.有任何想法吗?