您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在django上为每个用户创建一个Model(表)?

5b51 2022/1/14 8:23:02 python 字数 2109 阅读 587 来源 www.jb51.cc/python

我有一个模型,并希望系统的每个用户都有一个为自己保留的表,尊重这个模型. 说清楚: 想象一下模型“游戏”. 我不希望只有一个表“游戏”,但有: foo_games,bar_games(foo / bar是系统的用户) 这该怎么做 ? 编辑: 为什么? 想象一下,我有1000个用户,每个用户有100个游戏. 你认为你有1000 * 100项目的桌子比1000桌子每桌100件更好吗? 通常使用Djan

概述

说清楚:

想象一下模型“游戏”.
我不希望只有一个表“游戏”,但有:
foo_games,bar_games(foo / bar是系统的用户)

这该怎么做 ?

编辑:

为什么?

想象一下,我有1000个用户,每个用户有100个游戏.

你认为你有1000 * 100项目的桌子比1000桌子每桌100件更好吗?

from django.contrib.auth.models import User
from django.db import models

class Game(models.Model):
    name = models.CharField(max_length=50)
    owner = models.ForeignKey(User)

ForeignKey字段提供了一个链接”,它将1个游戏记录与特定用户相关联.

当您想要检索仅适用于1个用户的游戏时,您可以这样做:

# Select whichever user you want to (any of these work)
user = User.objects.get(username='admin')
user = User.objects.get(id=64)
user = request.user

# Then filter by that user
user_games = Game.objects.filter(owner=user)

编辑 –

回答有关更多行与更多表的问题:关系数据库服务器经过优化,可在单个表中拥有巨大的行容量.使用您的示例查询,1000 * 100只有100,000条记录,这可能只是表理论上可以容纳的值的0.01%(服务器内存和存储放在一边).

总结

以上是编程之家为你收集整理的如何在django上为每个用户创建一个Model(表)?全部内容,希望文章能够帮你解决如何在django上为每个用户创建一个Model(表)?所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶