我可以使用Django CreateViews创建一个向多个表添加数据的表单吗?我创建了一个名为UserMeta的模型来存储我的用户的一些额外信息.
我想用CreateViews创建一个视图,它显示用于创建新用户的字段(Django用户模型)和一些基于我的UserMeta模型的额外字段:
class UserMeta(models.Model):
country_code = models.CharField(max_length=30, verbose_name="Nome",
help_text="Insert the name of the country")
Run Code Online (Sandbox Code Playgroud)
我需要一个像这样的输出模式:
| - 体
| - 输入user.name
| - 输入user.username
| - 输入用户....
| - 输入usermeta.country_code
django-extra-views为此,您可以使用其他CBV的集合.
from extra_views import CreateWithInlinesView InlineFormSet
class UserMetaInline(InlineFormSet):
model = UserMeta
class UpdateOrderView(CreateWithInlinesView):
model = User
inlines = [UserMetaInline,]
Run Code Online (Sandbox Code Playgroud)
虽然这些内联通常用于外键关系,但它们也适用于一对一.