小编mad*_*989的帖子

Firestore 查询 Swift 4 的范围

我想问一个与 firestore 查询 swift 相关的问题。我的firestore结构如下:

在此处输入图片说明

目前我开发了一个搜索系统,用户可以在其中过滤minmax每个人team。以下是查询.collection("team")

Firestore.firestore().collection("team")
.whereField("min", isGreaterThanOrEqualTo : filterMin)
.whereField("max", isLessThanOrEqualTo : filterMax)
Run Code Online (Sandbox Code Playgroud)

预期:如果用户位置filterMin= 0 和filterMax= 600将显示team1和 的数据team2,如果用户位置filterMin= 3 和filterMax= 500,将仅team2显示数据。

但问题是如果我使用上面的代码,我会收到如下错误

'无效查询。具有不等式(lessThan、lessThanOrEqual、greaterThan 或 GreaterThanOrEqual)的所有 where 过滤器必须位于同一字段中。但是你在“min”和“max”上有不等式过滤器

我已经阅读了文档,但似乎对我帮助不大。我仍然是快速开发和firebase的新手。谢谢你帮助我。

firebase swift google-cloud-firestore

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

Alamofire:成功响应处理错误

嗨,我仍然是Alamofire和json的新手.我只想询问如何处理成功响应的错误.以下是带有post请求的api的响应.

{
data =     {
    "cabinet_id" = 3289146811;
    "created_at" = "2018-04-11T04:53:43.288023001Z";
    "user_id" = 123abc;
};
}
Run Code Online (Sandbox Code Playgroud)

但有时由于服务器错误我得到了如下的响应

{
error =     {
    "http_status_code" = 400;
    message = "Unable to proceed";
    type = "rent_request_failed";
};
}
Run Code Online (Sandbox Code Playgroud)

这就是我所做的

let url = "myurl"
let parameters = ["user_id": ""\(self.idPassed)"",
                          "cabinet_id": "\(self.stringPassed)"]

        Alamofire.request(url, method: .post, parameters: parameters, encoding: URLEncoding.default).responseJSON { response in

                if (response.result.isSuccess){

                    if let value = response.result.value {
//now success or failed always navigate to here                            
Helper.helper.switchToNavigationViewController(Navigation: "hundredpercent")
                        print(value)

                    }
                //do your json stuff …
Run Code Online (Sandbox Code Playgroud)

json swift alamofire

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

曲线搜索栏 Swift 4

我在导航控制器上以编程方式更改我的搜索栏设计时遇到问题。我只想使搜索栏曲线如下图所示:

在此处输入图片说明

我在堆栈溢出中尝试了很多示例,但我仍然无法改变形状。这是现在的样子:

在此处输入图片说明

这是源代码,关于已经完成的内容:

//MARK for searchBar UI
    searchController.dimsBackgroundDuringPresentation = false
    searchController.hidesNavigationBarDuringPresentation = false
    searchController.searchBar.placeholder = " Search for programs..."
    searchController.searchBar.sizeToFit()
    searchController.searchBar.isTranslucent = false
    searchController.searchBar.backgroundImage = UIImage()
    searchController.searchBar.delegate = self
    navigationItem.titleView = searchController.searchBar
    self.searchController.searchBar.layer.cornerRadius = 20.0
    self.searchController.searchBar.clipsToBounds = true
    // SearchBar text
    let textFieldInsideUISearchBar = searchController.searchBar.value(forKey: "searchField") as? UITextField
    textFieldInsideUISearchBar?.borderStyle = .roundedRect
    textFieldInsideUISearchBar?.font = textFieldInsideUISearchBar?.font?.withSize(14)
Run Code Online (Sandbox Code Playgroud)

现在,我真的不知道如何更改它,提前致谢。

uisearchbar uinavigationitem swift uisearchcontroller programmatically

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