- 我的項目有2個或更多的不同類型的模型作爲後
- ,我想書籤各類崗位車型
- 我需要儀表板或時間軸,顯示書籤的職位無論那種職位
所以我想2計劃。你對我的Django模型結構有什麼看法?
第一個計劃:
在每一個崗位
喜歡做不同的書籤模型:
class UserProfile(models.Model):
user = AutoOneToOneField(User, primary_key=True)#its_from_django-annoying
class Post1(models.Model):
text1 = models.TextField(max_length=110)
class Post2(models.Model):
text2 = models.TextField(max_length=120)
class bookmarkForPost1(models.Model):
who_user = models.ForeignKey(UserProfile)
what_bookmarked = models.ForeignKey(Post1)
class bookmarkForPost2(models.Model):
who_user = models.ForeignKey(UserProfile)
what_bookmarked = models.ForeignKey(Post2)
,並做一些儀表盤在views.py
第二個計劃:
製作PostProfile模型,書籤,
像:
class UserProfile(models.Model):
user = AutoOneToOneField(User, primary_key=True)
class PostProfile(models.Model):
description = models.TextField(max_length=100)
#Do something to connect Post1 or Post2
class Post1(models.Model):
text1 = models.TextField(max_length=110)
#Do something to connect PostProfile
class Post2(models.Model):
text2 = models.TextField(max_length=120)
#Do something to connect PostProfile
class bookmarkForPosts(models.Model):
who_user = models.ForeignKey(UserProfile)
what_bookmarked = models.ForeignKey(PostProfile)
第二個計劃是似乎是簡單和有利於我的眼睛。
第二個計劃,我不知道我把OneToOneField放在哪裏。在PostProfile或Post1(+ Post2)?另外,我無法理解如何在創建Post1或Post2後自動創建PostProfile。 但是第二個計劃是擅長,有沒有需要做views.py
東西我問的是:
- 是否有第一個計劃和第二個計劃之間存在嚴重的性能差異?如果是,有什麼更好?
- 你願意給我一些建議來完成第二個計劃嗎?
你可能考慮將你的問題轉移到代碼審查,如果它是收集有關想法和樣式的評論。 – gonczor