对于网站上的用户,使用数据库在Django中存储信息的最佳方式是什么。我正在处理的网站有以下几个部分:
问题是,文件应存放在何处? (我不知道每个人会有多少人)。对于每个文档,评论应存储在何处? (我不知道会有多少评论)。
我对Django很新,并且刚开始我买的这本书,但是需要开始计划才能在八月份完成它(这对于一个如此新的人来说甚至可能吗?)。
答案 0 :(得分:5)
直接前进OOP,您应该为每个工件创建一个模型(对象) - 例如:
class ChatComment(models.Model):
owner = models.ForeignKey(User)
when = models.DateTimeField(auto_now_add=True)
message = models.CharField(...)
...
chatroom = models.ForeignKey(ChatRoom)
class PublicDocument(models.Model):
owner = models.ForeignKey(User)
created = models.DateTimeField(auto_now_add=True)
title = models.CharField(...)
payload = models.FileField(...)
class DocumentReview(models.Model):
author = models.ForeignKey(User)
document = models.ForeignKey(PublicDocument)
when = models.DateTimeField(auto_now_add=True)
text = models.CharField(...)
等等......
答案 1 :(得分:1)
Paulo的回答很明显。但我还要补充一点,你应该仔细阅读FileField的文档。
文档通常存储在文件系统的目录中。数据库(根据Paulo的回答)将包含对该位置的引用。 Django可以使用FileField几乎自动为您完成此操作,所以请仔细阅读并确保您理解它。