Neden bazı model alanların birbiriyle çakışıyor?Django:
Kullanıcılar için 2 bağlantıları içeren bir nesne oluşturmak istiyorum. Örneğin:
class GameClaim(models.Model):
target = models.ForeignKey(User)
claimer = models.ForeignKey(User)
isAccepted = models.BooleanField()
ama sunucu çalışırken aşağıdaki hataları alıyorum:
Erişimci 'hedef' saha 'Kullanıcı.ile çatışmalar alanı için'. gameclaim_set Tanımı için related_name bir değişken Ekle 'hedef'.
Erişimci alan '' ilgili alan ile çatışmalar 'Kullanıcı.bahis ATI için'. gameclaim_set Tanımı için related_name bir değişken Ekle''. bahis ATI
Bu hataları alıyorum neden ve nasıl giderileceğini açıklar mısınız lütfen?
CEVAP
Kullanıcı için iki yabancı anahtarları var. Django otomatik olarak kullanıcıdan ters bir ilişki genellikle gameclaim_set
olan GameClaim, geri oluşturur. İki Sayılı zorunda çünkü ancak, belli ki bu imkansızdır gameclaim_set
iki öznitelikleri olurdu. Ters ilişki için hangi Django söyleyin.
FK tanımı related_name
özniteliğini kullanın. örneğin
class GameClaim(models.Model):
target = models.ForeignKey(User, related_name='gameclaim_targets')
claimer = models.ForeignKey(User, related_name='gameclaim_users')
isAccepted = models.BooleanField()
Django: model alanların listesini Alma...
Sabit XML ayrıştırma ve düzenli HTML i...
Neden bazı yüzer < karşılaştırmalar...
Neden diğerleri üzerinde bazı platform...
Model alan Güney kullanarak yeniden ad...