장고를 사용하여 브라우저 게임을 작성하려하지만 게임 설정을 저장하는 방법에 조금 어려움이 있습니다. 예를 들어, 게임은 틱 기반이며 현재 틱을 저장하려고합니다. 필자는 내장 된 사용자 인증 시스템에 문제가 발생하지 않도록 데이터베이스 당 하나의 게임만을 원한다고 결정했습니다 (예를 들어 다른 게임에서 이미 사용 되었기 때문에 사용자 이름 X를 사용할 수 없다는 말은하지 않으려합니다). 내가 알 수있는 한, 나는 여전히이 정보를 데이터베이스 테이블에 저장해야하지만, 최선을 다할 수있는 방법은 잘 모르겠습니다. 2 가지 옵션이있는 것 같습니다 :Django에서 데이터베이스 설정을 저장하는 가장 좋은 방법은 무엇입니까?
가) 게임을 다른 테이블 (예 : 사용자 프로필)에서 참조하는 일반 모델로 설정하고 두 개 이상의 게임이있을 수 있다는 가능성을 무시하십시오. 이것은 기술적으로 2 개의 게임 행을 가질 수 있다는 것을 의미하지만, 만약 상황이 아주 쉽게 깨지게된다면 말입니다.
B) 나는 항상 게임에 대한 모든 구성 데이터를 저장하는 단 하나의 행만 있다고 가정하는 모델을 가지고 있습니다. 이 모델에는 정적 메소드 만 들어 있으며 다른 모델에는이 모델에 대한 참조가 없습니다. 예컨대 : 이러한 옵션 중 어느 것도 나에게 "권리"를 보이지만 하나가 다른 것보다 더 나은 경우 사람이 말해 줄 수
class Game(models.Model):
current_slot = models.PositiveIntegerField(default=0)
@staticmethod
def slots_per_day(self):
Genre.objects.get(id=1).current_slot
? 아니면 아직 보지 못한 다른 옵션이 있습니까?
내가 잘못 알고있는 명백한 해결책이 여기 있습니다. 웃긴 일은 과거에 해냈습니다. – Bonnici