获取不存在其他模型的多方面关系的对象?

鲍勃·沃佐夫斯基

可以说我有两种模型和一种形式:

class Person(models.Model):
    first_name      = models.CharField(max_length=255)
    last_name       = models.CharField(max_length=255)

class Car(models.Model):
    plate   = models.CharField(max_length=255)
    persons = models.ManyToManyField(Person)
class CarAddForm(forms.ModelForm):
    plate           = forms.CharField()
    persons         = forms.ModelMultipleChoiceField(queryset=Person.objects.all())

    class Meta:
        model = Car
        fields = [
            'plate',
            'persons'
        ]

有没有办法获取与任何汽车都不相关的人的ModelMultipleChoiceField查询集?在编辑Car模型对象的情况下,查询集应包含不与任何car PLUS相关的人员PLUS与要编辑的car相关的人员

PS:也许有更好的方法可以实现这一目标?

JPG格式

您可以使用aslimit_choices_to-(Doc)参数ManyToManyField

class Car(models.Model):
    plate = models.CharField(max_length=255)
    persons = models.ManyToManyField(
        Person,
        limit_choices_to={"car__isnull": True}
    )

另外,您也可以更改asqueryset参数ModelMultipleChoiceField

class CarAddForm(forms.ModelForm):
    plate = forms.CharField()
    persons = forms.ModelMultipleChoiceField(
        queryset=Person.objects.filter(car__isnull=True)
    )

    class Meta:
        model = Car
        fields = [
            'plate',
            'persons'
        ]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

MYSQL:复制行表并插入,如果不存在其他UPDATE

在Java中传递对象,并试图改变他们在许多方面

如果值不存在,则在其他列中搜索

如果不存在其他地图中的键,如何将元素添加到地图中

Postgresql表存在,但查询时获取“关系不存在”

如果在其他两个类中不存在新对象,如何在Python Django中创建一个新对象?

SQL Server联接在其他表上不存在的位置

如果对象存在于全局中,则从函数的全局环境中获取对象;如果不存在,则使用其他默认值

获取“关系“ schemaversions”不存在错误”

当Hive中不存在其他帐户时,选择一个帐户

如果不存在一对多关系,则过滤对象

neo4j cypher-匹配不存在其他相同类型的特定节点的节点

psql在某些地方告诉我“数据库不存在”,而在其他地方则发现

Drools约束对象不存在,其成员字段包含除P之外的其他值

Django:获取不存在ForeignKey的对象

获取具有特定用户标识的其他表中不存在的记录

mysql在其他表中不存在

如果不存在php,则在其他文件夹中创建txt文件

合并R中的两列,同时在其他列中不存在值时进行替换

仅在其他班级不存在时添加班级

在其他表中不存在的表中查找记录

如果Gulp中不存在其他文件,则包含文件

PubNub:仅当给定键和事件不存在其他事件处理程序时,才能添加顶级通配符

如何获取其他表中不存在的值

如何获取每个类别中存在但其他类别中不存在的项目数?

如何从其他两个表中不存在的表中获取*记录

优化查询以获取其他表中不存在的 ID

SQL子查詢獲取不存在其他列值的所有列行

如果日期在其他 DataFrame 中不存在,则查找最后可用日期