This commit is contained in:
Gerard Gascón 2025-04-11 20:42:55 +02:00
commit 4fcbdaa4db
21 changed files with 589 additions and 0 deletions

36
server/views.py Normal file
View file

@ -0,0 +1,36 @@
import json
import random
from django.db import IntegrityError
from django.http import HttpResponse, Http404
from server.models import Dragon
def add(request, origin, name, color, shirt, hat, decor):
origin = origin.strip()
name = name.strip()
color = int(color.strip())
shirt = int(shirt.strip())
hat = int(hat.strip())
decor = int(decor.strip())
try:
dragon = Dragon.objects.create(origin=origin, name=name, color=color, shirt=shirt, hat=hat, decor=decor)
print(f'Received dragon ({dragon})')
except IntegrityError:
print('Dragon already exists')
return HttpResponse('')
def get(request, origin):
items = list(Dragon.objects.all().exclude(origin=origin))
if len(items) == 0:
print('hey')
raise Http404
random_item: Dragon = random.choice(items)
response_data = {'origin': random_item.origin, 'name': random_item.name, 'color': random_item.color,
'shirt': random_item.shirt, 'hat': random_item.hat, 'decor': random_item.decor}
return HttpResponse(json.dumps(response_data), content_type="application/json")