【问题标题】:How to retrieve data from RediSearch with Rust?如何使用 Rust 从 RediSearch 中检索数据?
【发布时间】:2021-01-12 20:50:22
【问题描述】:

我正在尝试使用 Rust 并使用 FT.SUGGET 命令从 RediSearch 获取自动完成数据,但它最终检索到 None 值,即使当我直接使用命令提示符运行 FT.SUGGET 时,它也会正确给出响应。这是我的代码,它的格式在 Redis 中非常适用于集合和获取。 FT.SUGADD 在这方面也能正常工作。感谢您以后的帮助!

pub fn ft_sugadd(index: String, field: String) -> redis::RedisResult<()>
{
    let client = redis::Client::open("redis://127.0.0.1/")?;
    let mut con = client.get_connection()?;
    redis::cmd("FT.SUGADD").arg(index).arg(field).arg("1".to_string()).query(&mut con)?;
    Ok(())
}

pub fn ft_sugget(index: String, field: String) -> redis::RedisResult<String>
{
    let client = redis::Client::open("redis://127.0.0.1/")?;
    let mut con = client.get_connection()?;
    let data_value = redis::cmd("FT.SUGGET").arg(index).arg(field).arg("fuzzy".to_string()).query(&mut con)?;
    Ok(data_value)
}

fn main()
{
    ft_sugadd("dictionary".to_string(), "Bob".to_string()).ok();
    let remember = ft_sugget("dictionary".to_string(), "Bo".to_string()).ok();
    println!("Hello {:?}", remember);
}

【问题讨论】:

  • 你管理好了吗?
  • 是的,我早就应该删除这个问题了。
  • 你能发布一个自我回答吗?

标签: database redis rust autocomplete redisearch


【解决方案1】:

这个问题已经解决了——它不能正常工作的原因是函数 ft_sugget 被定义为返回字符串,而实际上它应该返回一个字符串向量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-27
    • 2023-01-13
    • 2021-12-31
    • 2019-05-30
    • 2020-08-03
    • 1970-01-01
    • 2018-09-04
    • 2016-07-31
    相关资源
    最近更新 更多