2016-08-04 2 views
0

Итак, я делаю запрос, чтобы вернуть список записей, эти записи имеют ссылку на пользователя, создавшего запись. Ссылка на объект.Анализ: Извлечение свойств связанного объекта

Мой запрос получает меня объект, но я не могу получить доступ к полям этого объекта (за исключением, конечно, ID)

query.equalTo("search", search); 
     query.include("user"); 
     query.find({ 
      success: function(Report) { 
       for (var i = 0; i < Report.length; i++) { 
        var test = Report[i].id; 
        query.get(test, { 
         success: function(result) { 
          var reportDescription = result.get("reportDescription"); 
          var reportPicture = result.get("reportPicture"); 
          var reportPosition = result.get("reportPosition"); 
          var reportType = result.get("reportType"); 
          var reportDate = result.get("createdAt").toLocaleString(); 
          var reportSearchId = result.get("search").id; 

          var user = result.get("user") 
          console.log(user) 
          var reportSearchBy = user.username; 

         }, 
         error: function(result, error) { 
          alert(error.message); 
         } 
        }); 
       }; 
      }, 
      error: function(error) { 
       alert(error.message); 
      } 
     }); 

Что я делаю неправильно?

ответ

1

Я попытался запустить аналогичный код с тем, что вы сделали. когда я попытался получить доступ с помощью точечной нотации я получаю не определено, но, когда я пытался получить его с .get («FIELDNAME») он работает ..

вот мой код:

var FileTest = Parse.Object.extend("FileTest"); 
    var query = new Parse.Query(FileTest); 
    query.include("user"); 
    query.find().then(function(results){ 

    var lastItem = results[results.length - 1]; 
    if (lastItem){ 
     var user = lastItem.get("user"); 
     console.log(user.get("username")); 
    } 

    },function(error){ 

    }); 

пожалуйста обратите внимание, что я также использовать Promise для лучшего кодирования и для того, чтобы получить имя пользователя я сделал lastItem.get («имя пользователя») поэтому, пожалуйста, попробуйте заменить user.username с user.get («имя пользователя») и посмотреть если он работает.

+0

Вы рок чувак! Спасибо! – Burf2000

+1

Твой привет! :) –

Смежные вопросы