django - 获取与内联表单相关的外键字段名称

标签 django django-admin

在 django admin 中,我有一个 ModelForm 和一个内联表单。我需要 save_formset 方法中外键字段的名称,通过该外键字段,内联表单的模型与主(父)表单的模型相关。

class Author(models.Model):
    name=models.CharField(max_length=30)

class Article(models.Model):
    writer=models.ForeignKey(Author)

我需要 Author 的 ModelAdmin 的 save_formset 方法中的字段名称(本例中为“writer”)。

最佳答案

我到底猜想的是,您正在尝试获取与特定 modeladmin 相关的外键字段的名称。

您应该在 ModelAdmin 中使用 save_formset 字段,并在此处找到外键名称。

all_formset_forms = formset.forms

这将返回您尝试保存的当前表单的所有内联表单。

循环遍历每个表单字段和您要求的字段,即 modeladmin 实例的相关外键字段是parent_instance 的属性。

if hasattr(formset_form_field,'parent_instance'):
    formset_field_name  =  formset_form_field
    related_modeladmin_instance = formset_field_name.parent_instance

关于django - 获取与内联表单相关的外键字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28408198/

相关文章:

python - django 中的自定义用户模型不允许在管理员中设置密码

python - 推特 Bootstrap href 按钮不起作用

python - 如何在 django 中的日期时间中分离 HH 和 MM

python - Django 中的图像字段

python - 如何让非员工用户访问 Django 管理站点?

python - Django 1.5 : Display foreignkey values in both admin models

django - 错误 : "relation "django_comments"does not exist"

python - Django:如何正确处理数据库连接错误

python - Django ModelForm 不保存数据

django - 如何扩展django管理员 View ?