ユーザー プロファイル オブジェクトとグループ オブジェクトの 2 つのオブジェクトを使用する単純なアプリを通じて Django を学習しています。ユーザーは複数のグループの一部になることができ、グループは複数のユーザーを持つことができます。これら両方のオブジェクト間の一般的な関係を定義します。
models.py
class Profile(models.Model):
groups = generic.GenericRelation('Groups', null=True, blank=True,
content_type_field='content_type',
object_id_field='object_id',
related_name='profile_groups')
def deleteGroup(self, group_name):
group_id = Groups.find_or_create(self, group_name, find_only=True)
self.assertIsNotNone(group_id)
group_id.delete()
class Groups(models.Model):
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
members = generic.GenericRelation(Profile, null=True, blank=True,
related_name='group_members')
グループの削除中にエラーが発生します。エラーは、GenericForeignKey または GenericRelation の filter() に引数を渡すことに関係があることを理解していますが、以前のスレッドでは、delete() ではなく get_or_create() のコンテキストで言及されています。
どんな助けでも大歓迎です。
エラー:
"models.py", in deleteGroup
group_id.delete()
...
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py", line 155, in filter
return self.get_query_set().filter(*args, **kwargs)
...
FieldError: Cannot resolve keyword u'object_id' into field. Choices are: *<Profile objects global variable>*