def add_worm(request): if request.method == 'POST': form = WormForm(request.POST) if form.is_valid(): worm = form.save(commit=False) if request.user.is_authenticated(): worm.user = request.user fake = Faker() while True: slink = fake.password(length=7, special_chars=False) if len(Worm.objects.filter(slink=slink)) == 0: worm.slink = slink break continue worm.timestamp = make_aware(datetime.now()) worm.save() messages.add_message(request, messages.SUCCESS, 'You successfully got that worm!') else: messages.add_message(request, messages.ERROR, 'Form data invalid, all fields required') else: messages.add_message(request, messages.ERROR, 'Stop trying to hack this site!') return redirect(request.GET['next'])
def get_queryset(self): self.form = WormForm() self.user = get_object_or_404(User, pk=self.kwargs['pk']) last30 = datetime.now() - timedelta(days=30) thirtybird = self.user.worm_set.all().filter(timestamp__gt=last30) return thirtybird.order_by('-numclicks') \ .prefetch_related('user')
def edit_worm(request, worm_id): worm = get_object_or_404(Worm, pk=worm_id) if request.method == 'GET': form = WormForm(instance=worm) elif request.method == 'POST': form = WormForm(instance=worm, data=request.POST) if form.is_valid(): worm = form.save(commit=False) worm.timestamp = datetime.now() worm.save() messages.add_message(request, messages.SUCCESS, 'Updated worm') return redirect('click_list', pk=worm_id) messages.add_message(request, messages.ERROR, 'Form data invalid' 'by field') return render(request, 'bookmarks/edit_worm.html', {'worm_id': worm_id, 'worm': worm, 'form': form})
def get_queryset(self): self.form = WormForm() self.user = get_object_or_404(User, pk=self.kwargs['pk']) return self.user.worm_set.all().order_by('-timestamp') \ .prefetch_related('user')
def get_queryset(self): self.form = WormForm() return User.objects.annotate(bird_clicks=Count('click')).order_by('-bird_clicks')
def get_queryset(self): self.form = WormForm() last30 = datetime.now() - timedelta(days=30) thirtyworms = Worm.objects.filter(timestamp__gt=last30) return thirtyworms.order_by('-numclicks')
def get_queryset(self): self.form = WormForm() return Worm.objects.order_by('-numclicks')
def get_queryset(self): self.form = WormForm() return Worm.objects.all().order_by('-timestamp') \ .prefetch_related('user')