2014-06-16 86 views
0

我有两个表& B,在表BI具有指针类型的一列,每场分一类表A筛选分析查询

我需要知道如何查询表B基于指针列中特定字段的值。例如,我在表B中有4个对象(记录),而在指针列中,我有指针1,指针2,指针3和指针4。因此,如果我想对表B执行查询,并且想要使用pointer3的字段值提取记录,那么我如何在javascript中执行此操作?

+0

你的问题不太合理,你的意思是你想查询TableB中的记录,其中TableB.pointer3 = pointerA,其中pointerA是一些已知的值? –

+0

我在B中有两个表A和B,有一个指向A的指针列。我用这两个表使用指针列填充一个html表。我的用户可以编辑html表格行,所以当他们点击save时,我需要用html表格字段中的数据更新两个分析表格(A和B)。所以我想更新一个成功更新另一个,或者你有更好的方法吗? –

回答

0

因此,经过很长时间的搜索,环顾四周,并提出问题,我终于自己想出了自己。我需要一个对象来传递在query.equalTo方法,像这样:

query.find({ 
     success: function(results) { 

     var detailsObject = results[0]; 
     detailsObject.set("uuid", uuid); 
     detailsObject.set("proximity", prox); 
     detailsObject.set("campaignId", campaignId); 
     detailsObject.set("location", location); 
     detailsObject.set("sub_location", subLoc); 

     detailsObject.save(null, { 
      success: function(detailsObject) { 

       var content = Parse.Object.extend("Content"); 
       var contentQuery = new Parse.Query(content); 
       var id = detailsObject.id; 
       contentQuery.equalTo("descId", detailsObject); 

所以"descId"是我的内容表,而不是试图查询的字段(详情对象ID对象)的值的指针列,我需要将详细信息传递给query.equalTo

我希望这对其他人有好处。

1

根据您的评论,我会建议存储每个行的两个对象ID。如果需要在UI中提供反馈,则可以使用Parse.when(recordA.save(), recordB.save()).then(...)等到两者都完成。

另一种方法是只存储表B记录的对象ID,并在成功处理程序中返回更新后的记录,该记录将包含指针,然后可以执行另一次保存。这是缓慢的,因为它会按顺序执行两次保存,而不是立即踢掉。

+0

感谢您的快速回复蒂莫西,我很新的解析,你能展示一个样本吗?我已经在文档和论坛上喋喋不休了,但我确实处于关键时刻,我不知道如何继续。谢谢 –