对于account类型,我使用AbstractUser构造模型
class Profile(AbstractUser):
pass
class Second(Profile)
#fields here
class Third(Profile)
#fields here
相应的形式如下
^{pr2}$我不知道这是定义模型函数的正确方法
我现在的问题是如何创建一个包含second model
或Third model
字段的用户。?
我有HTML
页面,用户可以选择创建哪个帐户USerType
。。在
错误(1062,“密钥'username'”的条目“”重复)。 但它的创建用户,我认为第二种形式不起作用。。 如何解决这个错误?在
我看到这些台词,马上就注意到你的问题:
创建用户时:
^{pr2}$你正在创建一个用户。在
创建第二个用户时:
您没有填充
username
字段。也许您至少运行了两次此代码,而数据库中存在一个空的用户记录。在然而,最大的问题不是你问什么。最大的问题是:
create
。将创建一个用户条目。在save
。创建另一个用户条目并创建第二个条目。在create
d用户上冗余地调用save
。这个电话没有效果。在因此,您正在创建两个用户条目。如果希望一个用户有两个概要文件,则必须修复模型。目前您有:
如果不向AbstractUser添加字段:为什么不直接使用默认用户?(只是为了方便;不是解决问题的一部分)。在
您需要创建概要文件,而不是子类,因此用户可能同时属于这两个概要文件。这是一个完全不同的OOP概念。所以这个问题不是关于Django,而是关于OOP。在
您需要修复调用以使用第二个配置文件实例化用户:
看在上帝的份上,让你的观点原子化/事务化!您正在添加多个记录。
相关问题 更多 >
编程相关推荐