如何实现Django Admin外键的添加按钮?

时间:2018-03-01 11:18:16

标签: python ajax django django-admin

我想在ForeignKey字段旁边实现添加按钮,以便我们可以将数据添加到字段/数据库。

我一直在关注几个教程,但它们都没有帮助我实际添加数据到字段,反过来,我的数据库。我一直在寻找各处,但我似乎找不到任何完成这项任务的人。

我一直关注的一个很好的教程就是这个:http://man7.org/linux/man-pages/man7/aio.7.html

但是,教程非常好,直到最后。他只实现编辑按钮,而不是添加按钮。因此,我不确定在为ForeignKey添加数据时,为了复制admin添加按钮所做的操作,我需要进行哪个AJAX调用。

为了简洁起见,本教程中的所有代码都是我所拥有的,我只需要为添加按钮实现一个函数。

如果有人有任何想法或能指出我正确的方向,那将非常感激。

1 个答案:

答案 0 :(得分:0)

用于添加数据的AJAX应该是POST请求,但您是否尝试过编写的add按钮?我在使用Django 2.0+,所以我无法复制粘贴他没有修改的内容,但在他的views.py

def AuthorCreatePopup(request):
  form = AuthorForm(request.POST or None)
  if form.is_valid():
    instance = form.save()
    return HttpResponse('<script>opener.closePopup(window, "%s", "%s", "#id_author");</script>
  return render(request, "author_form.html", {"form" : form})

看起来它应该处理新记录并更新主窗体上的字段。如果它不起作用,我认为你在某个地方有错误。