首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Django模型中学习表示复杂的关系?

如何在Django模型中学习表示复杂的关系?
EN

Stack Overflow用户
提问于 2017-04-06 15:27:04
回答 1查看 72关注 0票数 0

考虑一下火车票预订应用程序。有许多城市,车站和火车

每个城市都有一个/多个车站。很明显,一个车站不能在一个以上的城市。每个车站都有一列/多列火车。每列火车都经过一个或多个车站,最后停在一个固定的(公共)目的地。

现在,我想做一个表单,用户可以选择他的城市,同一城市的车站,然后火车(该城市的车站接收),并最终预订火车。

到目前为止,这就是我所做的。

代码语言:javascript
复制
class City(models.Model):
    name = models.CharField(max_length=50, help_text="Your city name")

class Train(models.Model):
    number = models.IntegerField(primary_key=True)
    name = models.CharField(max_length=50, help_text="Train")
    city = models.ForeignKey(City)



class Station(models.Model):
   city = models.ForeignKey(City)
   name = models.CharField(max_length=50, help_text="All available stations in your city")

class BookedTicket(models.Model):
   city = models.ForeignKey(City)
   station = models.ForeignKey(Station)
   train = models.ForeignKey(Train)

请建议如何建立正确的关系,因为我不能显示正确的站为一个选定的城市和类似的,培训一个选定的城市和车站。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-06 16:52:01

你可以用_set找到一个城市的车站

代码语言:javascript
复制
my_city = City.objects.get(name="my hometown") 
stations_in_city = my_city.station_set.all()

还请参阅文档这里这里中的一些示例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43259459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档