我正在嘗試創建一個具有待辦事項功能的網站!到目前為止,我已經對其進行了編程,因此它可以與一個用戶完美配合。但是,當我用不同的用戶登錄時,我仍然可以查看我的待辦事項列表,我不希望這樣?,F在,如果我能讓這個特定的功能對很多人有用,我會很高興。所以這個人登錄他的帳戶,創建他自己的列表/我登錄我的并創建我自己的列表。我搜索了很多 youtube 教程和文章,但都沒有幫助 :( 如果我能在這里解決這個問題,并且得到像您這樣的編碼專家的大量幫助,那就太棒了!這是我與待辦事項功能相關的代碼Views.pydef ToDo(request): todos = TodoList.objects.all() categories = Category.objects.all() if request.method == "POST": if "taskAdd" in request.POST: title = request.POST["description"] date = str(request.POST["date"]) category = request.POST["category_select"] content = title + " -- " + date + " " + category Todo = TodoList(title=title, content=content, due_date=date, category=Category.objects.get(name=category)) Todo.save() return redirect("/to_do") if "taskDelete" in request.POST: print(request.POST) checkedlist = request.POST.getlist('checkedbox') for todo_id in checkedlist: todo = TodoList.objects.get(id=int(todo_id)) todo.delete() return render(request, 'Todolist.html', {"todos": todos, "categories":categories})models.pyclass TodoList(models.Model): title = models.CharField(max_length=250) content = models.TextField(blank=True) created = models.DateField(default=timezone.now().strftime("%Y-%m-%d")) due_date = models.DateField(default=timezone.now().strftime("%Y-%m-%d")) category = models.ForeignKey(Category, on_delete=models.CASCADE) class Meta: ordering = ["-created"] def __str__(self): return self.title全部.html<div django-app="TaskManager"><div class="container"> <div class="content"> <h2 style="text-align: center">Tasks are listed here!</h2> <p class="tagline">Jayden's To-Do system</p> <form action="" method="post"> {% csrf_token %} <div class="inputContainer"> <label for="category">What should I do??</label>有人可以幫我讓這個特定于用戶嗎?謝謝你??!
1 回答

收到一只叮咚
TA貢獻1821條經驗 獲得超5個贊
首先,您的 TODO 模型需要關聯到用戶
from django.conf import settings
class TodoList(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
title = models.CharField(max_length=250)
創建待辦事項時,將其鏈接到用戶
def ToDo(request):
...
Todo = TodoList(user=request.user, title=title, content=content, due_date=date,
category=Category.objects.get(name=category))
Todo.save()
...
檢索列表時,需要按用戶過濾
def ToDo(request):
todos = ToDo.objects.filter(user=request.user)
...
添加回答
舉報
0/150
提交
取消