0
나는이 모델을 가지고 : 여기 이 관계를 모델링하는 더 좋은 방법이 있습니까?
class Assignment(db.Model):
title = db.StringPeoperty(required=True)
...other stuff...
class TeamScore(db.Model):
assignment = db.ReferenceProperty(Assignment,
collection_name="teamScores",
required=True)
teamID = db.IntegerProperty(required = True)
score = db.IntegerProperty(required = True)
...other stuff...
가 peoblem입니다. 홈페이지에서 각 과제의 상위 3 개 (점수에 따라) 팀 작업을 보여 드리고자합니다. 그래서, 내 템플릿이 통과 :
assignments = Assignment.all()
템플릿에서 :
{% for assignment in assignments%}
**<!--How to implement showing the top three-->**
{% for score in assignment.teamScores%}
{{score.teamID}}
{{score.score}}
...............
{% endfor%}
{%endfor%}
을이 데이터 저장소 모델. 템플릿으로 정렬해야합니다. 불가능합니다. 그래서, 나는이 문제를 다루는 더 좋은 모델을 가지고 있다고 생각합니다. 그러나 나는 그것을 알아낼 수 없다. 필자는 ListProperty를 추가하여 상위 3 개를 저장하는 방법에 대해 생각했습니다. 새 TeamScore가 생성 될 때마다이를 목록의 점수와 비교하여 상위 3 개를 최신 상태로 유지합니다. 그러나 나는이 방법이 기교가 아니라고 생각한다.
의견을 보내 주시겠습니까?
감사합니다.
감사합니다. Nick. 그러나 각 과제마다 TOP3이 필요한 많은 과제가 있습니다. 파이썬 파일에서 쿼리를 수행하면 모든 과제를 반복하고 모든 사용자의 TOP3을 찾아야한다는 의미입니다. 각 과제의 모든 TOP3를 하나의 점수 목록에 넣으라고 제안합니까? 할당 과제의 TOP3를 얻기 위해 'assignmentEntity.teamScores.order ('- score '). fetch (3)'사용자에게 문의하려고합니다. 주문이 작동하지 않습니다. 주문 기능은 참조 속성에서 사용자가 될 수 없습니다. – hakunami
@stevenYANG 네,하지만 어디에서든 쿼리를 많이해야 할 것입니다. 두 번째 요소가 최고 점수 목록 인 (과제, 상위 3 개) 튜플 목록을 작성하는 것이 좋습니다. –
죄송합니다. 예를 들어 refernece 속성을 주문할 수 있다는 것을 분명히하고 싶습니다. 마지막 코멘트에서 작성한 코드는 사용할 수 있습니까? – hakunami