2012-08-23 6 views
0

ACL 기능을 사용하여 사용자가 다른 사용자와 공유 할 수있는 게시물을 제어하려고합니다. "오류 : [TiJSError (629)] (주) [1,124536] - 메시지 : Uncaught TypeError (브라우저를 사용하여 ACS 관리 콘솔을 통해) ACL에 연결할 때 다음 오류가 발생합니다. : 정의되지 않은 'username'속성을 읽을 수 없습니다. "Appcelerator ACS에서 ACL을 사용하는 중 오류가 발생했습니다.

기본적으로 코드는 ACL이 첨부 된 경우 게시물 내용 및 제목에만 작동합니다. 그러나 ACL을 제거하면 전체 코드가 올바르게 작동합니다. 내가 놓친 게 있니? 다음은 내 코드의 모습입니다 ...

 app.Cloud.Posts.query(function (e) { 
     if (e.success) { 
      if (e.posts.length == 0) { 
       //alert("There is no information to display. Please enter some data and try again."); 

       table.setData([ 
        { title: 'No Results!' } 
       ]); 
      } 
      else { 
       var data = []; 
       for (var i = 0, l = e.posts.length; i < l; i++) { 
        data.push(Ti.UI.createTableViewRow({ 
         id: e.posts[i].id, 
         title: e.posts[i].title, 
         content: e.posts[i].content, 
         username: e.posts[i].user.username, 
         userfirst_name: e.posts[i].user.first_name, 
         userlast_name: e.posts[i].user.last_name, 
         useremail: e.posts[i].user.email, 
         type: e.posts[i].custom_fields.type, 
         coordinates: e.posts[i].custom_fields.coordinates, 
         latitude : e.posts[i].custom_fields.coordinates[0][1], 
         longitude : e.posts[i].custom_fields.coordinates[0][0]       
        })); 
       } 
       table.setData(data); 
      } 
     } 
     else { 
      error(e); 
     } 
    }); 

이 문제를 해결하는 방법에 대한 모든 정보는 정말 감사하겠습니다. 감사!

답변

0

응답 배열의 각 "게시물"개체를 디버깅하고 살펴 보았습니까? ACL을 사용할 때 일반적으로 허용되지 않는 게시물에 대해 ID가있는 객체를 반환합니다. 예 :

{"posts":[{"id":"534dfgdfg44"},{"id":"5436rgdf345f3f3", "username":"meow", etc....}]} 

따라서 반환 된 배열의 각 개체에 대해 원하는 데이터가 있는지 확인해야합니다.

희망이 도움이됩니다.

관련 문제