如何在 Django fixture 中引用内容类型?

How to reference ContentType in Django's fixture?

我正在使用 django-guardian 为 Django 项目编写测试。权限的夹具如下所示:

- fields:
    content_type: 10
    object_pk: '2'
    permission: 22
    user: 1
  model: guardian.userobjectpermission
  pk: 1

通过 id 引用 content_typepermission 安全吗?还是 id 会改变(即当我添加额外的 permission/model 时)?

引用自动加载的对象的最佳方法是什么?

您应该能够使用 natural keys 来引用 content_typepermission 值。

- fields:
    content_type: [<app_label>, <model>],
    object_pk: '2'
    permission: [<permission_codename>, <app_label>, <model>],
    user: 1
  model: guardian.userobjectpermission
  pk: 1