用于联系和查询的数据库设计和Django模型

时间:2018-10-19 19:41:37

标签: django django-models database-design django-forms

我正在为摄影师创建一个小型Django网站。

有联系表格和预订单。这些联系线索的一部分将丢失。如果客户预订,则该应用程序应该能够跟进客户。

我一直在考虑如何进行操作,我的想法是创建一个联系表,其中包含客户从联系表中提供的信息,以及第二个表,如果发生联系,该表将具有“一对一”关系潜在客户成为客户。

在事件发生后的稍后阶段,将有一个私人访问文件夹,用户可以在其中下载他的照片。并且必须是用户才能登录并具有授权和认证。

您将如何在Django中设计数据库和模型?有什么建议或考虑因素,以便以最佳方式解决问题?

Database tables example

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

models.py

class contact(models.Model):

 user = models.OneToOneField(User)
 Phone = models.CharField(default='', max_length=20)
 event_type=models.CharField(default='',choices=create_a_list_of_choices_)
 date=models.DateField(auto_now=True)
 email=models.EmailField()
 image = models.ImageField(blank=True,upload_to='users_photos',)

class Booking(models.Model):

 User=models.ForeignKey(
    User,
    on_delete=models.CASCADE,
   )
 Extra=models.CharField(max_length=50,blank=True)
 Deposit=models.CharField(max_length=50)
 Time=models.DateField(auto_now=True)
 Notes=models.TextField(max_length=250,blank=True)
 Price=MoneyField(max_digits=14, decimal_places=2, default_currency='USD')

这是模型的外观,可以添加其他一些字段,对于moneyfiled,可以通过以下链接进行安装:https://github.com/django-money/django-money