从 PHP 的角度来看,我对 django 完全陌生。我想写一个真正的基本应用程序,有四个类:Book、Ebook、Genre 和 price。每本书和电子书都应该有一个类型和多个奖项。在 SQL-DB 中,我会在 Book 和 Ebook 中放置一个字段,通过 id 引用流派表和一个名为 Book_prices 的新表,它将书籍和电子书链接到价格。
table book_prices
id | type | price
---+--------+------
1 | book | 3
2 | book | 3
3 | ebook | 1
table book/ebook
id | ... | genre_id
---+-----+---------
1 | | 5
2 | | 7
3 | | 9
基本上,我想为每本电子书和书籍添加价格列表和一种类型。如何使用 django 模型做到这一点?我知道model.ForeignKey()
哪个可以应用于每本引用流派的书/电子书。但是我的价格呢?如果我将 a 添加ForeignKey()
到价格中,它只能参考书籍或电子书。
class Book:
name = models.CharField(max_length=100)
pages = models.IntegerField()
class Ebook:
name = models.CharField(max_length=100)
filesize = models.FloatField()
class Genre:
name = models.CharField(max_length=100)
info = models.TextField()
class Price:
currency = models.CharField(max_length=4)
amount = models.FloatField()