【发布时间】:2019-12-16 22:13:58
【问题描述】:
我有一个问题要让它变得更容易:我有一个像 user -> Hotel - > Rooms 这样的关系。用户可以创建酒店,然后每个酒店可以有很多房间。
现在我有一个像
这样的用户模型class UserProfile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
company_name=models.CharField(max_length=50, null=False, blank=False)
email=models.CharField(max_length=50, null=False, blank=False)
company_number=models.CharField(max_length=50, null=False, blank=False)
并创建餐厅
class Restaurant(models.Model):
rest_owner = models.ForeignKey(UserProfile, on_delete=models.CASCADE, related_name='rest_owner')
name = models.CharField(max_length=50, null=False, blank=False)
address = models.TextField(max_length=100, null=False)
city = models.CharField(null=True, max_length=50)
country = models.CharField(null=True, max_length=30)
现在是房间
class Room(models.Model):
rest_owner = models.ForeignKey(Restaurant, on_delete=models.CASCADE, related_name='rest_owner')
name = models.IntegerField()
Rooms = models.IntegerField()
这是一个很好的方法吗?并保存房间和餐厅的图像我应该做一个
class Image(models.Model):
image = models.ImageField(null=False, upload_to='Gallery')
然后像images = models.ManyToManyField(Image)这样在房间和餐厅使用? .我需要知道做这两个的最佳方法。谢谢
【问题讨论】:
标签: python django database django-models