小编L.S*_*L.S的帖子

Doctrine Query Builder 从表中删除所有条目

我在使用查询构建器删除 id 找到的所有记录时遇到了一些麻烦,我尝试过像下面的代码一样,但我总是收到这个错误:

 [Semantical Error] line 0, col 53 near 'b.id = :surv': Error: 'b' is not defined. 
Run Code Online (Sandbox Code Playgroud)

方法:

public function deleteUsers($surveyId) {
    $qb = $this->getEntityManager()->createQueryBuilder();

    return $qb
        ->delete()
        ->from(BaseUser::class, 'a')
        ->leftJoin('a.survey', 'b')
        ->where('b.id = :survey')
        ->setParameter('survey', $surveyId)
        ->getQuery()
        ->execute()
        ;
}
Run Code Online (Sandbox Code Playgroud)

php symfony doctrine-orm

6
推荐指数
1
解决办法
9619
查看次数

Symfony pre_submit 更改字段顺序

鉴于以下表单类型,我如何在提交之前呈现我的第二个字段?我试过了,$form->remove但我总是会收到这个错误:

Warning: Illegal offset type in isset or empty
Run Code Online (Sandbox Code Playgroud)

不太确定如何解决这个问题。

/**
 * @param FormBuilderInterface $builder
 * @param array $options
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        ->add('survey', EntityType::class, [
            'class' => SurveyManager::class,
            'attr' => [
                'class' => 'field-change',
            ],
        ])
        ->add('submit', SubmitType::class, [

        ])
        ->addEventListener(
            FormEvents::PRE_SUBMIT,
            function (FormEvent $event) {
                $form = $event->getForm();

                $data = $event->getData();
                $modifier = $data['survey'];
                $form->add('headquarter', EntityType::class, [
                    'class' => HeadQuarterManager::class,
                    'query_builder' => function (HeadQuarterManagerRepository $er) use ($modifier) {
                        return $er->getHeadquarter($modifier);
                    }, …
Run Code Online (Sandbox Code Playgroud)

php symfony-forms symfony

5
推荐指数
1
解决办法
654
查看次数

标签 统计

php ×2

symfony ×2

doctrine-orm ×1

symfony-forms ×1