概述
说清楚:
想象一下模型“游戏”.
我不希望只有一个表“游戏”,但有:
foo_games,bar_games(foo / bar是系统的用户)
这该怎么做 ?
编辑:
为什么?
你认为你有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(表)?所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧