Итак, я делаю свой первый сайт и размещаю его на Heroku.
Цель веб-сайта - опубликовать вызовы, которые приводят к определенному секретному ключу (вроде очень простого CTF). Когда ключ отправлен, задача решена.
Это код в моем файле models.py
from django.db import models
from django.contrib.auth.models import User
class Post(models.Model):
""" Each post represents one challenge """
title = models.CharField(max_length=40)
text = models.TextField()
secret_key = models.CharField(max_length=30)
solved = models.BooleanField(default=False, name='solved')
file = models.FileField(upload_to='uploads/', null=True, blank=True)
# solved_by = models.ForeignKey(User, on_delete=models.CASCADE)
def check_state(self, answer):
""" Examine whether the challenge was solved """
if self.secret_key == answer:
self.solved = True
self.save()
return True
return False
def __str__(self):
return self.title
Каждый пост в основном вызов. Решенное значение устанавливается в True, когда кто-то решает задачу / сообщение, а также контролирует, будет ли текст видимым для пользователей. Прямо сейчас, когда кто-то решает проблему, она решается для всех остальных. Я хочу, чтобы каждый пользователь решал каждую задачу, и у него есть своя решаемая переменная для каждой задачи. Я пытался использовать models.Foreign ключ, но он не будет работать. Какое отношение к базе данных мне нужно, чтобы эта работа работала?