我非常沮丧,需要一些指导。我目前在iOS上有一个Swift应用程序通过Heroku运行Parse(因此它不会死亡,这不是原因)。
直到昨天,一切都进展顺利。我已经能够像这样读取和写入我的数据库,并且一切正常:<?php
if (isset($_POST['ssf'])) {
$id_ss_kat = $_POST['id_ss_kat'];
$id_kat = $_POST['id_kat'];
$id_ss = $_POST['id_ss'];
foreach($id_kat as $kat) {
$source.=$kat.", ";
}
$one=substr($source,0,-1);
$q = "INSERT into ss_kat VALUES('$id_ss_kat','$one','$id_sekolah')";
$dq = mysql_query($q);
if ($dq) {
echo "berhasil";
}else{
mysql_error();
}
}
?>
这是我的数据库作为证明:
我今天创造了所有这些对象。直到今天,我已经能够准确地查询和接收这样的对象:
let ideaPost = PFObject(className: "ideaPosts")
ideaPost["mood"] = moodField.text
ideaPost["ideaText"] = ideaTextField.text
ideaPost.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in
print("Object has been saved.")
和
ParseHelper.searchPosts(mood!, completionBlock: handleIdea)
正如您所看到的,我引用了正确的类和正确的字段。据我所知(我昨晚快速移动,一定是不小心碰到了一些东西)我没有改变一些代码。由于这个原因,我的项目已经成了废墟。
为什么会这样?为什么我的结果总是空的?我输出返回的结果PFObject,因为它作为一个空的可选项返回。
我认为我改变的唯一两件事是1.我重命名了我的项目(因此Xcode重命名了我的所有目标,但我没有构建错误或任何东西)早些时候我清理了(删除了一些行)在我的桌子里。
我还在我的帐户中添加了一个新的数据库/服务器集但是这不应该影响我不会想到的任何事情。我很绝望。这里出了什么问题?
我已经清理了我的构建甚至一切。
答案 0 :(得分:1)
如果搜索代码尝试将小写searchText
与情绪属性(看起来像是)中的混合大小写数据匹配,则会生成空结果。
.whereKey(("mood").lowercaseString, equalTo:searchText.lowercaseString)
第一个操作数命名要比较的列,即"mood"
,值得注意("mood").lowercaseString == "mood"
正则表达式看起来更有前景。是否有可能评论出你最近做出的改变?
除了正则表达式之外,唯一不区分大小写匹配情绪列的方法是保留数据被强制为小写的mood_i
之类的另一列,并搜索该列。初始化此类列的常见做法是afterSave
。