django - Django - 为管理员创建多对多内联对象,类似于 inlinetabular
问题描述
我想允许用户创建内联/即时创建模型 A 的对象,该对象与模型 B 的字段具有多对多关系,同时创建对象 B ......基本上就像 TabularInline 允许你做的那样在管理员上。
解决方案
好的,这将帮助你 models.py
class A(models.Model):
fileds of A
class B(models.Model):
name= models.CharField(max_length=50,null=True,blank=True)
a= models.ForeignKey('Voyage',on_delete=models.CASCADE)
form.py 添加这个:
inlineForm = inlineformset_factory(A,B,
fields=('name'),
can_delete=False,extra=4,max_num=4
)
视图.py:
from .form import inlineForm
def test(request,id):
obj=A.objects.get(id=id)
if request.method == 'POST':
form= inlineForm(request.POST,request.FILES,instance=obj)
if form.is_valid():
form.save()
return redirect(reverse('core:simple'))
form = inlineForm(instance=obj)
return render(request,'obj/inlineForm.html',{'formset':form})
推荐阅读
- css - 隐藏在 Quasar 中其他组件后面的粘性浮动操作按钮
- git - Git Push 包括我的路径目录(BitBucket)
- jenkins - Jenkins 仪表板中的上次成功和上次失败列未正确更新
- c - C - 简单链表删除包含'k'的第一个元素
- python - 如何使用“unittest”从测试类中杀死 Python 程序?
- azure - Azure 数据工厂:Web 和 Webhook 活动的安全性
- jquery - Django:如何将表单加载到当前的 html 页面
- json - Discord.js 写入和读取 message.author.id json 文件,稍后将其从 json 中删除
- javascript - 在哪里可以找到 html 检查中的按钮 ID?
- sql - SUBSTRING 负起始位置