Skip to content
This repository has been archived by the owner on Aug 20, 2018. It is now read-only.

Commit

Permalink
[R] Switch Game model to uuid pk.
Browse files Browse the repository at this point in the history
  • Loading branch information
Serge Travin committed Jul 30, 2011
1 parent c3544f7 commit ab65e99
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 6 deletions.
@@ -0,0 +1,51 @@
# encoding: utf-8
import datetime
from south.db import db
from south.v2 import SchemaMigration
from django.db import models

class Migration(SchemaMigration):

def forwards(self, orm):

# Deleting field 'Game.uid'
db.delete_column('game_game', 'uid')

# Changing field 'Game.id'
db.alter_column('game_game', 'id', self.gf('django.db.models.fields.CharField')(max_length=36, primary_key=True))


def backwards(self, orm):

# User chose to not deal with backwards NULL issues for 'Game.uid'
raise RuntimeError("Cannot reverse this migration. 'Game.uid' and its values cannot be restored.")

# Changing field 'Game.id'
db.alter_column('game_game', 'id', self.gf('django.db.models.fields.AutoField')(primary_key=True))


models = {
'game.game': {
'Meta': {'object_name': 'Game'},
'desk_cards': ('django.db.models.fields.CommaSeparatedIntegerField', [], {'default': "''", 'max_length': '250'}),
'end': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}),
'finished': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'id': ('django.db.models.fields.CharField', [], {'max_length': '36', 'primary_key': 'True'}),
'remaining_cards': ('django.db.models.fields.CommaSeparatedIntegerField', [], {'max_length': '250'}),
'start': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'})
},
'game.gamesession': {
'Meta': {'object_name': 'GameSession'},
'client_state': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'failures': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'game': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['game.Game']", 'null': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'last_access': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
'set_pressed_dt': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
'sets_found': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'state': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'user': ('django.db.models.fields.CharField', [], {'max_length': '50'})
}
}

complete_apps = ['game']
2 changes: 1 addition & 1 deletion setwithme/apps/game/models.py
Expand Up @@ -18,7 +18,7 @@

class Game(models.Model):

uid = models.CharField(max_length=36, unique=True)
id = models.CharField(max_length=36, primary_key=True)
finished = models.BooleanField(default=False)
start = models.DateTimeField(default=datetime.datetime.now)
end = models.DateTimeField(null=True, default=None)
Expand Down
10 changes: 5 additions & 5 deletions setwithme/apps/game/views.py
Expand Up @@ -20,7 +20,7 @@ def start_game(request):
if qs.count():
gs = qs.all()[0]
return {'status': 302,
'url': reverse(game_screen, kwargs={'game_id': gs.game.uid})}
'url': reverse(game_screen, kwargs={'game_id': gs.game.id})}
wu = WaitingUser.objects.get_or_create(user=user_id)[0].update()
last_poll_guard = datetime.datetime.now() - WAITING_USER_TIMEOUT
opponents = WaitingUser.objects.\
Expand All @@ -29,7 +29,7 @@ def start_game(request):
if opponents:
opponent = opponents[0]
game_id = get_uid()
game = Game.objects.create(uid=game_id)
game = Game.objects.create(id=game_id)
GameSession.objects.create(game=game, user=user_id)
GameSession.objects.create(game=game, user=opponent.user)
wu.delete()
Expand All @@ -41,7 +41,7 @@ def start_game(request):

@ajax_request
def get_status(request, game_id):
game = Game.objects.get(uid=game_id)
game = Game.objects.get(id=game_id)
self_id = request.session.session_key
GameSession.objects.get(game=game, user=self_id).update()
users = [gs.serialize(self_id) for gs in \
Expand All @@ -56,7 +56,7 @@ def get_status(request, game_id):

@ajax_request
def put_set_mark(request, game_id):
game = Game.objects.get(uid=game_id)
game = Game.objects.get(id=game_id)
self_id = request.session.session_key
if not game.gamesession_set.filter(state=State.SET_PRESSED).count():
gs = game.gamesession_set.get(user=self_id)
Expand All @@ -66,7 +66,7 @@ def put_set_mark(request, game_id):

@ajax_request
def check_set(request, game_id):
game = Game.objects.get(uid=game_id)
game = Game.objects.get(id=game_id)
self_id = request.session.session_key
gs = game.gamesession_set.get(user=self_id)
if gs.set_in_time():
Expand Down

0 comments on commit ab65e99

Please sign in to comment.