作者:陈苏女士 | 来源:互联网 | 2023-09-18 12:44
我有一个带有两个模型的Django项目:Applicant和Client,其中Client是Applicant的子类.我想要一种允许用户将现有的Applicant实例添加为客户端的方法.我已经有
我有一个带有两个模型的Django项目:Applicant和Client,其中Client是Applicant的子类.我想要一种允许用户将现有的Applicant实例添加为客户端的方法.我已经有一个Applicant实例的视图,因此我认为在该页面上拥有一个Client模型表单可以做到这一点,但是从the documentation开始,它看起来像您不能使用超类实例来初始化模型表单.我知道我可以通过使代码直接进入数据库并向子类表添加字段来做到这一点,但是还有更多的Django-y方法吗?
解决方法:
您可以使用以下代码从现有的Applicant实例创建Client实例:
client = Client(applicant_ptr=applicant)
client.save_base(raw=True)