小编Kra*_*ash的帖子

在elasticsearch中查询DSL中的must和filter之间有什么区别?

我是弹性搜索的新手,我在必须和过滤器之间感到困惑.我想在我的条款之间执行和操作,所以我这样做了

POST/xyz/_search

{
    "query": {
        "bool": {
            "must": [
                {
                    "term": {
                        "city": "city1"
                    }
                },
                {
                    "term": {
                        "saleType": "sale_type1"
                    }
                }
            ]
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这给了我所需的结果匹配这两个术语,并使用这样的过滤器

POST/xyz/_search

{
    "query": {
        "bool": {
            "must": [
                {
                    "term": {
                        "city": "city1"
                    }
                }
            ],
            "filter": {
                "term": {
                    "saleType": "sale_type1"
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到相同的结果,所以什么时候应该使用must,什么时候应该使用过滤器?有什么不同?

filter querydsl elasticsearch

45
推荐指数
2
解决办法
1万
查看次数

如何在程序退出时使用golang删除文件?

我已经创建了一个命令行应用程序,我在其中压缩文件夹并在本地服务器上共享以供其他人下载.我想要做的是在关闭服务器后立即删除压缩文件夹的副本.这是我的代码:

func main() {
    //flag to specify whether we will be uploading folder or a single file
    zipped := flag.Bool("z",false,"Use for zipping folders and serving them as a single file on the server.(Deletes the zipped file once the server closes.)")
    save := flag.Bool("s",false,"Use with -z for saving the zipped files locally even after the server closes.")
    flag.Parse()


    if len(flag.Args())>0{

        if *zipped{
            fmt.Println("zipping...")
            flag.Args()[0]=ZipFile()

            if !(*save){
              //I expect this to remove the file when I hit ctrl+c on cmd  
              defer os.Remove(flag.Args()[0]) …
Run Code Online (Sandbox Code Playgroud)

go

8
推荐指数
1
解决办法
6399
查看次数

django验证器函数的返回值存储在哪里?

在我的django应用程序中,这是我的validator.py

from django.core.exceptions import ValidationError
from django.core.validators import URLValidator

def validate_url(value):
    url_validator = URLValidator()
    url_invalid = False
    try:
        url_validator(value)
    except:
        url_invalid = True
        try:
            value = "http://"+value
            url_validator(value)
            url_invalid = False
        except:
            url_invalid = True

    if url_invalid:
        raise ValidationError("Invalid Data for this field")
    return value
Run Code Online (Sandbox Code Playgroud)

用于验证这一点:

from django import forms
from .validators import validate_url
class SubmitUrlForm(forms.Form):
    url = forms.CharField(label="Submit URL",validators=[validate_url])
Run Code Online (Sandbox Code Playgroud)

当我输入类似URL google.co.in,并在从validate_url返回之前打印该值http://google.co.in时,它会打印,但是当我尝试获取cleaned_data['url']我的视图时,它仍会显示google.co.in.那么我的验证器返回的值在哪里去,我是否需要显式编辑clean()函数来更改url字段值?

该文件说明如下:

Field子类上的clean()方法负责以正确的顺序运行to_python(),validate()和run_validators()并传播它们的错误.如果在任何时候任何方法引发ValidationError,则验证停止并引发该错误.此方法返回干净数据,然后将其插入到表单的cleaning_data字典中.

我仍然不确定验证器返回值的位置以及是否可以使用验证器更改cleaning_data dict.

python django validation

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

为什么这个void函数返回一个整数,即使没有return语句?

此代码打印5即使我没有返回任何内容m().

#include <stdio.h>
int abc();
int main(){
    printf("%d", m());
}

int abc(){
    return 5;
}

void m(){
    abc();
}
Run Code Online (Sandbox Code Playgroud)

该功能也是无效的.那么有人可以解释为什么要打印5个?

c

4
推荐指数
1
解决办法
83
查看次数

以下算法的时间复杂度是多少?

给定n个整数的序列,A.为了找到序列的总和,我们遵循以下递归算法,我们创建一个大小为n/2的新序列B,其中B [i] = A [2*i] + A [ 2*i + 1]对于i从0到n/2 - 1并且我们将A替换为B.当A的大小为1时,我们返回元素本身.

时间复杂度不应该如下计算吗?

T(n) = T(n/2) + O(n/2)
or
T(n) = T(n/4) + O(n/4) + O(n/2)
or
T(n) = O(1) + O(2) + O(4) + ... + O(n/4) + O(n/2)
Run Code Online (Sandbox Code Playgroud)

在这一点上,我不确定我是否正确地做了这个值应该等于什么.我假设O(nlgn)

我如何找到解决方案?另外,使用主定理给我O(n),我不确定我是否正确应用主定理.有人可以在这里指导我吗?

algorithm big-o time-complexity

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

从 api 同时请求数据时的 TLS 握手超时

这是我第一个使用并发的程序,所以我可能会遗漏一些相当简单的东西。

package main

import(
    "net/http"
    "net/url"
    "log"
    "flag"
    "io/ioutil"
    "fmt"
    "golang.org/x/net/html"
    "strings"
    "encoding/json"
    "os"
    "html/template"
)

type fileInfo struct{
    Title string `json:"Title"`;
    Year string `json:"Year"`;
    Runtime string `json:"Runtime"`
    Genre string `json:"Genre"` 
    Rating string `json:"imdbRating"`;
    Description string `json:"Plot"`;
    Image string `json:"Poster"`;
    Awards string `json:"Awards"`;
}

var movie struct{
    Name string;
    Year string;
}
var Movies []fileInfo
func main() {
    flag.Parse()
    files, _ := ioutil.ReadDir(flag.Args()[0])
    var queryNames []string
    for _, f := range files {
        go func(){
            queryNames= append(queryNames,url.QueryEscape(f.Name()))
        }()
    }
    //fmt.Println(os.Getenv("GOPATH") …
Run Code Online (Sandbox Code Playgroud)

concurrency go

0
推荐指数
1
解决办法
2701
查看次数

C运算符优先级,a ++ && b ++ ||中的逻辑与一元 ++ç

在以下代码中,

int a = 1, b = 2, c = 3, d;
d = a++ && b++ || c++;
printf("%d\n", c);
Run Code Online (Sandbox Code Playgroud)

输出将是3,我得到或评估第一个条件,将其视为1,然后不关心其他条件,但在c中,一元运算符的优先级高于逻辑运算符,就像在数学中一样

2 * 3 + 3 * 4
Run Code Online (Sandbox Code Playgroud)

我们首先评估产品然后求和来评估上述表达式,为什么不做同样的事情呢?首先评估所有一元运算符,然后是逻辑事物?

c operator-precedence

0
推荐指数
1
解决办法
69
查看次数

如果我有db用户名,密码和主机,是否可以访问远程数据库?

我发现上面提到的数据库凭据已经在我学院的网站上注释掉了,我想知道是否可以通过这么多信息远程访问数据库.

评论是格式的

$con=mysqli_connect("localhost","xxxxx","xxxx","xxxxx");
Run Code Online (Sandbox Code Playgroud)

我尝试了mysql -u USERNAME -h HOST db_name -p然后在提示符上输入密码但它被卡在那里我必须中止命令.我该怎么做?

php mysql

-3
推荐指数
1
解决办法
46
查看次数