これはおそらくデータベースの設計上の問題ですが、それ以上はわかりませんでした。他のいくつかのモデルの中で、私はこれらのモデルを持っています:
class User(models.Model):
name = models.CharField( max_length=40 )
# some fields omitted
bands = models.ManyToManyField( Band )
と
class Band(models.Model):
creator = models.ForeignKey( User )
# some fields omitted
name = models.CharField( max_length=40 )
つまり、基本的に、バンドエンティティと多対多の関係を持つユーザーエンティティがあります。ねじれは、サイトでバンドを「作成」した特別なユーザーに、特別な編集機能を持たせたいということです。そこで先に進み、creator という ForeignKey を追加しました。Band がソース内の User の後に来たため、コードを実行できませんでした。だから私は前向きに宣言しclass Band(models.Model): pass
た。悲しいことに、これはあまり良い考えではないようです。現在、Band は django admin にインターフェース要素を表示しない唯一のモデルだからです (Bands モデルはそこにありますが、編集することはできません)。
私の質問は、これを適切に機能させるには、モデルにどのような変更を加える必要があるかということです。(もしあれば)