【问题标题】:Javascript with Parse: Error 111 expected Pointer but got [object Object]带有解析的 Javascript:错误 111 预期指针但得到 [object Object]
【发布时间】:2016-10-18 14:02:20
【问题描述】:

所以我在解析服务器中遇到了一些指针问题。 我有一个表,它用指针连接另外两个表。

例子:

var table1id  //ID of the first table
var table2id  //ID of the second Table
var Example = Parse.Object.extend('example_table');

function add_newExample(table1id, table2id) {
    var example = new Example();
    example.set('table1_id', table1id);
    example.set('table2_id', table2id);
    example.save(null, {
        success: function () {
            console.log('New object created');
         },
        error: function (error) {
            console.log('Failed to create new object');
        }
    })
}

错误:

code: 111 error: "schema mismatch for example_table.table1id; expected Pointer but got [object Object]"

【问题讨论】:

    标签: javascript parsing parse-platform parse-server


    【解决方案1】:

    从上面的代码中并不清楚 table1_id table2_id 的字段应该是什么,或者您将它们设置为什么。

    如果您查看仪表板中的 example_table,这些列表示它们是什么类型?

    但我假设它们应该是指向其他表中的行的指针(基于您遇到的错误),在这种情况下,下面的内容应该适合您。

    const Example = Parse.Object.extend('example_table');
    
    const Table1 = Parse.Object.extend('table1');
    const table1Ptr = new Table1().set('objectId', '1');
    
    const Table2 = Parse.Object.extend('table2');
    const table2Ptr = new Table2().set('objectId', '6');
    
    const addNewExample = function addNewExample(table1Ptr, table2Ptr) {
      // return the promise that results from the save
      return new Example() // just chaining everything to be terse...
        .set('table1_id', table1Ptr)
        .set('table2_id', table2Ptr)
        .save(null, { useMasterKey: true }) // may not be necessary, depending
        //
        // don't use these old style handlers, use promise syntax
        // which I substitute for the following below.
        // success: function () {
        //    console.log('New object created');
        // },
        // error: function (error) {
        //    console.log('Failed to create new object');
        // }
        .then(
          // fancy fat arrow notation for functions like the cool kids...
          o => console.log('new object: ' + o.id + ' created'),  
          e => console.error('uh oh: ' + e.message)
        );
    };
    
    addNewExample(table1Ptr, table2Ptr);
    

    【讨论】:

      【解决方案2】:

      我看到的第一个问题是你有一个错字。 var 示例 = 新的示例();应该是 var example = new Example();

      【讨论】:

      • 哦,该死的,但这不是问题所在。当我将它粘贴在这里时会发生这种情况。
      猜你喜欢
      • 2019-11-13
      • 1970-01-01
      • 1970-01-01
      • 2018-11-27
      • 2017-09-14
      • 1970-01-01
      • 1970-01-01
      • 2016-12-28
      • 1970-01-01
      相关资源
      最近更新 更多