Tkwi w strukturze modelu BAZY danych aplikacji w Django. (Aplikacja do sprawdzania bezpieczeństwa pracy)

0

Pytanie

Chcę stworzyć aplikację, która bardziej wygląda na aplikację z listy kontrolnej, która, w którym będzie kilka pytań (np. ankiety), jak pokazano poniżej, ale więcej niż jeden.

w odpowiedzi będzie 3 warianty odpowiedzi: Tak, Nie i NIE.

na przykład, dla

  • W. 1. Czy jest on wyposażony personel BA sprzętu ochronnego?

  • Odpowiedź. i.) Tak , ii.) Nie , iii) N/D

  • V. 2. Pogoda w dobrym stanie, aby wspiąć się na pracę?

  • Odpowiedź. i.) Tak , ii.) Nie , iii.) N/D

W ten sposób będzie lista kontrolna około 7-8 podobnymi pytaniami.

i dla każdego zalogowanego użytkownika zostanie zapisany osobne wystąpienie do pełnej listy kontrolnej.

Moje rozwiązanie (nie skalowalne):

Aby stworzyć taki model, jak.

lista kontrolna zajęć:

qus1 = model.CharField(...choices = yesnochoices)

qus2 = model.CharField(...choices = yesnochoices)

i tak dalej. ale to nie będzie tak profesjonalnie i rosnący.

Nie mógłbyś, proszę podpowiedzieć, jak to zrobić. oprócz podejścia opisanego powyżej?

database django model python
2021-11-22 19:52:42
1

Najlepsza odpowiedź

0

Jeśli dobrze rozumiem twój problem, możesz zrobić coś takiego:
u ciebie może być model wydania. a następnie model odpowiedzi, która łączy użytkowników z pytaniami.
co by było mniej więcej tak:

class Question(models.Model):
    text = models.CharField()

class Answer(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    answer = models.CharField(choices=yesnochoices)

Myślę, że coś takiego jest dość rosnący i rozwiąże twój problem.

2021-11-22 20:03:35

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................