Geoffrey-Django/views.py

51 lines
1.1 KiB
Python

from django.shortcuts import render
from django.views.generic import View
from GeoffreyApp.models import *
from django.views import generic
from django.db.models import Q
# Create your views here.
class Home(View):
def get(self, request):
base_num = Base.objects.count()
shop_num = Shop.objects.count()
player_num = Player.objects.count()
item_num = ItemListing.objects.count()
context = {
"num_players": player_num,
"num_bases": base_num,
"num_shops": shop_num,
"num_items": item_num,
}
return render(request, 'GeoffreyApp/home.html', context=context)
class PlayerList(generic.ListView):
model = Player
class ShopList(generic.ListView):
model = Shop
def get_queryset(self):
qs = Shop.objects.all()
search = self.request.GET.get('q')
if search:
qs = qs.filter(Q(name__icontains=search) | Q(owner__name__icontains=search))
return qs
class BaseList(generic.ListView):
model = Base
class ItemListingList(generic.ListView):
model = ItemListing