3

(이전에 지속 된) 주문한 컬렉션의 항목 순서 만 변경하면됩니다 ...주문한 + 지속 된 컬렉션에서 주문을 변경하는 방법은 무엇입니까?

재 배열 된 컬렉션을 setter로 전달하려고했습니다. 트랜잭션을 커밋 한 후 컬렉션이 사라졌습니다.
그런 다음 기존 컬렉션과 addAll()을 삭제하려고 시도했습니다. clear()를 사용하면 영구적 인 관리자가 모든 요소를 ​​삭제 된 것으로 표시 할 수 있습니다. (하지만 분명히 트랜잭션의 콜렉션 항목을 처리 할 수 ​​있기를 원합니다.)

(콜렉션은 기본 페치 그룹에 있지 않으므로 위의 페칭 그룹을 행운을 빌어 요.)

이것은 가장 어리석은 질문 일 것입니다.하지만 아이디어가 없어졌으며 이미 이틀 동안 여기에서 붙어 있습니다. 나는 맹세했다. :(

답변

1

데이터의 순서는 인덱스로 설정된다. 불행히도 그러나 기능 삭제하거나 (인덱스는 현재없는 리셋 How-to delete indexes in Google App Engine (Java)?.

동적으로 인덱스를 변화시킬 수있다. http://rahulswackyworld.blogspot.com/2010/03/dynamic-indexes-with-google-app-engine.html보기

+0

고맙습니다. 아무도 컬렉션의 항목 순서를 변경할 필요가 없다고해도, 도움이된다면 도움이 될 것입니다. 저는 Java를 사용하고 있습니다. , 그리고 링크 된 솔루션이 Python과 함께 작동한다고 가정하면 구현하기가 쉽지 않을 것입니다. 그래서 저는 생각했습니다. 당신이 파를 지우는 것조차도 의미가 있다고 생각합니까? 개체를 임대하고 컬렉션 속성을 다시 배열하여 다시 만드시겠습니까? (그 외에는 변경되지 않고 동일한 키가 포함됩니다.) –

+0

그럴 수도 있습니다. 이론적으로는 끔찍한 생각이지만 실제적으로는 효과가있을 것입니다. 문제는 수집 관계를 단순화하는 google-data-store가 될 것으로 보이며이를 읽는 쿼리를 변경하는 확실한 방법을 제공하지 않습니다 (쿼리를 통해 주문을 사용하여 지정된 컬렉션을 가져올 수 있어야합니다. 하지만 자동 정렬되지는 않습니다. –

+0

예, 끔찍한 데요, 어쨌든 그렇게하지 않을 것입니다. 글쎄, Google에서 공식적인 단어를 얻을 수 없다고 생각하면 대답을 준 것 같아요. 시간 내 주셔서 감사합니다. –

관련 문제