Как ссылаться на ContentType в приспособлении Django?

Я пишу тесты для проекта Django с Django-Guardian. Крепеж для разрешений выглядит так:

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

Безопасно ли ссылаться content_type а также permission по идентификатору? Или идентификаторы собираются изменить (например, когда я добавлю дополнительное разрешение / модель)?

Каков наилучший метод для ссылки на объекты, которые загружаются автоматически?

1 ответ

Решение

Вы должны быть в состоянии использовать естественные ключи для ссылки на content_type а также permission ценности.

- fields:
    content_type: [<app_label>, <model>],
    object_pk: '2'
    permission: [<permission_codename>, <app_label>, <model>],
    user: 1
  model: guardian.userobjectpermission
  pk: 1
Другие вопросы по тегам