2017-10-26 6 views
2

:쿼리는

return query('PapersFromAPoll',{id : count.poll.pollId})

:

query PapersFromAPoll 
{ 
    description: "retrieve all the papers from a poll" 
    statement: 
     SELECT org.acme.democracity.Paper 
      WHERE(poll.pollId == _$id) 
} 

내가 어떤 행을 얻을 수없는 걸, 여기에 내가이 쿼리를 만드는 곳 단편 WHERE 문을 지우고 매개 변수없이 간단한 쿼리를 작성하면 완벽하게 작동하기 때문에 이상합니다. model.cto 파일

종이 및 설문 조사 :

asset Paper identified by paperId { 
    o String paperId 
    o String[] fields 
    --> Poll poll //Paper related with a poll 
} 

asset Poll identified by pollId { 
    o String pollId 
    o Ask[] asks 
} 

답변

3
query PapersFromAPoll 
{ 
    description: "retrieve all the papers from a poll" 
    statement: 
    SELECT org.acme.democracity.Paper 
     WHERE(poll == _$pollId) 
} 

그래서 당신은 그 Poll 자산에 대한 참조를 제공함으로써 Poll 자산을 기준으로 필터링 할 수 있습니다. pollId으로 쿼리하려고하면 리소스에 대한 참조 여야합니다. resource:org.acme.democracity.Poll#{insert_id}

+0

맞아요, 설문 조사와 종이 모델을 추가하여 질문을 업데이트했는데, 설문 조사를 사용하는 이유를 볼 수 있습니다. .pollId. Paper에는 Poll 필드가 있기 때문입니다. –

+0

위의 답변으로 업데이트했습니다. 더 많은 도움이 되었기를 바랍니다. – TheOkayCoder

+0

그게 효과가있는 것 같습니다. 이제 행을 가져 왔음을 확신 할 수 있지만 다음과 같은 오류 메시지가 나타납니다. '오류 : ID가'ID가있는 객체 'pollId : poll1111'ID가 'asset : org.acme.democracity.Poll'인 컬렉션에서 –