elastic querybuilders怎么添加多个参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elastic querybuilders怎么添加多个参数相关的知识,希望对你有一定的参考价值。

参考技术A   elastic querybuilders怎么添加多个参数
  elasticsearch的config文件夹里面有两个配置文 件:elasticsearch.yml和logging.yml,第一个是es的基本配置文件,第二个是日志配置文件,es也是使用log4j来记录日 志的,所以logging.yml里的设置按普通log4j配置文件来设置就行了。下面主要讲解下elasticsearch.yml这个文件中可配置的东西。
  cluster.name: elasticsearch
  配置es的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
  node.name: "Franz Kafka"
  节点名,默认随机指定一个name列表中名字,该列表在es的jar包中config文件夹里name.txt文件中,其中有很多作者添加的有趣名字。本回答被提问者采纳

Symfony的。存储库方法。在查询参数(queryBuilder)中绑定用户

我有一个问题,我是symfony 3.2中的新手我想根据用户登录查询一个对象。我听说我需要注入用户信息?但是怎么样?

知识库

public function findAllActiveCategoryByUser(UserInterface $user)
{
    return $this->createQueryBuilder('sc')
        ->andWhere('sc.company_id = :company')
        ->setParameter('company_id', $this->getUser->getCompany->getCompanyId)
        ->orderBy('sc.createdAt', 'ASC');
}

SubAgentType

public function buildForm(FormBuilderInterface $builder, array $options)
    {

        $builder
             ->add('category', EntityType::class, [
            'placeholder' => 'Choose Category',
            'class' => Sub_agent_category::class,
            'query_builder' => function (Sub_agent_categoryRepository $er) {
                return $er->findAllActiveCategoryByUser();

            },
            'constraints' => array(new NotBlank(array('message' => 'Category is required.')))
        ])
答案

试试这个:

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $user = $this->securityContext->getToken()->getUser();

    $builder
        ->add('company', EntityType::class, [
            'placeholder' => 'Choose Company',
            'class' => Company::class,
            'query_builder' => function (CompanyRepository $er) {
                return $er->findAllActiveCompany($user);
            },
            'constraints' => array(new NotBlank(array('message' => 'Company is required.')))
        ])
}

库:

public function findAllActiveCategoryByUser(UserInterface $user)
{
    $qb = $this->createQueryBuilder('sc');
    $result = $qb->select('sc')
        ->where('sc.company_id = :company')
        ->setParameter('company', $this->getUser->getCompany->getCompanyId)
        ->orderBy('sc.createdAt', 'ASC')
        ->getQuery();
    return $result->getResult();

}

以上是关于elastic querybuilders怎么添加多个参数的主要内容,如果未能解决你的问题,请参考以下文章

Elasticsearch TermQuery 详解

在 Jquery Querybuilder afterAddRule 事件中选择创建的规则的后代

Symfony的。存储库方法。在查询参数(queryBuilder)中绑定用户

学说:ORM QueryBuilder 或 DBAL QueryBuilder

ORMLite QueryBuilder.orderByRaw(String, SelectArg) 忽略 QueryBuilder.queryRaw() 上的 SelectArg

创建knex queryBuilder并稍后执行