2024-04-20 13:44:59 发布
网友
所以我是编程新手,目前正在学习Django。我知道这可能是个愚蠢的问题,但我似乎到处都找不到答案,我真的很想知道。你知道吗
我正在做一个篮球数据追踪器应用程序。它的工作原理是输入你在多少次尝试中得分的次数,并将其添加到当前的准确率百分比中。假设你上次5/10岁,现在35/90岁。然后百分比从50%上升到40%。它对我有用,但我想让人们可以注册。我知道如何做到这一点,但我如何使每个用户的统计个性化?你知道吗
为每个用户创建一个新的数据库并不是真正的数据库工作方式。你应该用表格来做这件事。你知道吗
默认情况下,Django中的每个模型都会获得一个名为“id”的字段,这是数据库用来区分不同条目的字段。你创建的每个用户都会得到一个新的id,第一个用户的id=1,第二个用户的id=2,依此类推。这些都存储在数据库的users表中。因此,每个想要跟踪其得分的用户都将在users表中获得自己的记录。这类表格的基本示例如下:
| id | name | age | | 1 | John | 23 | | 2 | Mitch | 15 | | 3 | Joe | 33 | ...
实际上,Django为此使用了一种特殊的用户模型。默认情况下,Django使用特定的模型。更多关于here。考虑到您已经实现了身份验证,您应该能够很好地处理这个问题。现在,为了追踪用户的分数,你可以在你的应用程序中创建另一个类似“分数”的模型,这个模型可能如下所示:
from django.contrib.auth import get_user_model from django.db import models class Score(models.Model): user = models.ForeignKey( get_user_model(), on_delete=models.CASCADE, related_name='scores', ) tries = models.PositiveSmallIntegerField() successful_tries = models.PositiveSmallIntegerField()
一些类似的东西。此时,请不要介意“get\u user\u model()”方法调用。这是一个跟踪大量用户的新模型。您可以通过执行Score.objects.create(user=request.user, tries=10, successful_tries=5)来创建一个。你的每一个训练课程都可以创建一个新的“分数”对象来跟踪你的尝试次数和成功的尝试次数。您可以使用request.user.scores.all()(相关的\u名称就是这样做的)来访问所有这些文件。这样,一个用户可以拥有0到无限个与其相关的“Score”对象。驻留在数据库的users表中的每个用户,以及驻留在数据库的scores表中的每个分数。你知道吗
Score.objects.create(user=request.user, tries=10, successful_tries=5)
request.user.scores.all()
如果这有点令人困惑,请查看this blogpost主题。数据库设计和设置域通常都是很重要的概念,如果您刚开始学习的话。你知道吗
为每个用户创建一个新的数据库并不是真正的数据库工作方式。你应该用表格来做这件事。你知道吗
默认情况下,Django中的每个模型都会获得一个名为“id”的字段,这是数据库用来区分不同条目的字段。你创建的每个用户都会得到一个新的id,第一个用户的id=1,第二个用户的id=2,依此类推。这些都存储在数据库的users表中。因此,每个想要跟踪其得分的用户都将在users表中获得自己的记录。这类表格的基本示例如下:
实际上,Django为此使用了一种特殊的用户模型。默认情况下,Django使用特定的模型。更多关于here。考虑到您已经实现了身份验证,您应该能够很好地处理这个问题。现在,为了追踪用户的分数,你可以在你的应用程序中创建另一个类似“分数”的模型,这个模型可能如下所示:
一些类似的东西。此时,请不要介意“get\u user\u model()”方法调用。这是一个跟踪大量用户的新模型。您可以通过执行
Score.objects.create(user=request.user, tries=10, successful_tries=5)
来创建一个。你的每一个训练课程都可以创建一个新的“分数”对象来跟踪你的尝试次数和成功的尝试次数。您可以使用request.user.scores.all()
(相关的\u名称就是这样做的)来访问所有这些文件。这样,一个用户可以拥有0到无限个与其相关的“Score”对象。驻留在数据库的users表中的每个用户,以及驻留在数据库的scores表中的每个分数。你知道吗如果这有点令人困惑,请查看this blogpost主题。数据库设计和设置域通常都是很重要的概念,如果您刚开始学习的话。你知道吗
相关问题 更多 >
编程相关推荐