Tot*_*oum 2 django model foreign-keys multiple-models
这是我的模型:
class Item(models.Model):
name = models.CharField(max_length=30)
...
choices = (
('weapon', 'weapon'),
('shield', 'shield'),
)
typeOf = models.CharField(max_length=15, choices=choices)
class Character(models.Model):
name = models.CharField(max_length=30, unique=True)
...
weapon = models.ForeignKey(Inventory) // **THIS IS WHAT I WANT TO DE BUT DOES'NT WORK**
shield = models.ForeignKey(Inventory) // **THIS IS WHAT I WANT TO DE BUT DOES'NT WORK**
inventory = models.ManyToManyField(Item, through='Inventory')
class Inventory(models.Model):
character = models.ForeignKey('Character')
item = models.ForeignKey('Item')
Run Code Online (Sandbox Code Playgroud)
我知道如何将物品添加到库存但现在我想装备它们.我该怎么做外键?我希望能够从我的库存中装备武器
您需要添加related_name到字段定义中
...
weapon = models.ForeignKey(Inventory, related_name='weapons')
shield = models.ForeignKey(Inventory, related_name='shields')
...
Run Code Online (Sandbox Code Playgroud)
如果没有related_name,django会尝试character_set在Inventory模型中创建属性,但是第二次会失败.
| 归档时间: |
|
| 查看次数: |
4085 次 |
| 最近记录: |