как использовать временную базу данных для каждого пользователя в django - PullRequest
0 голосов
/ 03 мая 2020

, поэтому я изучаю Django и делаю приложение todo, но я застрял с проблемой. Я храню каждую задачу в базе данных sqlite3 (по умолчанию django) с моделями, но когда кто-либо хранит какую-либо задачу, она также видна другому человеку, и как мне это исправить? если у вас есть альтернативное решение для этого, вы также можете сказать, например, как использовать куки или что-то еще

models.py:-

from django.db import models

# Create your models here.

class Task(models.Model):
  title = models.CharField(max_length=200)
  completed = models.BooleanField(default=False, blank=True, null=True)

  def __str__(self):
    return self.title

1 Ответ

2 голосов
/ 03 мая 2020

Хранить, кому принадлежит задача,

class Task(models.Model):
  title = models.CharField(max_length=200)
  completed = models.BooleanField(default=False, blank=True, null=True)
  user = models.ForeignKey(
        settings.AUTH_USER_MODEL,
        on_delete=models.CASCADE,
    )

Вам нужно будет сохранить пользователя при создании / обновлении задачи. Например,

task = Task.objects.create(title=title, user=user)

Теперь, когда вам нужно показать задачи, показывать только релевантные задачи

tasks = Task.objects.filter(user=request.user)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...