我正在创建这个小节目调度程序。
我有表格显示,title:string
和description:text
。我想在节目中添加日期和时间(每个节目可以有多天,每天都有自己的OWN时间)。我该怎么做呢?
我在考虑制作一张时间表。使用列(show_id
,day
和time
)。然后,在列出节目时,您将搜索符合show_id
的时间并按日排序。
欢迎任何想法,建议等。
答案 0 :(得分:2)
您可以使用以下命令创建Show
模型:
script/generate model Show title:string description:text
然后你要创建ShowTime模型:
script/generate model ShowTime date:datetime time:datetime
然后,在您的show.rb
模型文件中,您将定义has_many
这样的关系:
has_many :showtimes
在您的ShowTime
模型文件中,您可以定义belongs_to
这样的关系:
belongs_to :show
答案 1 :(得分:1)
对我而言,最简单的解决方案是使用单个DateTime对象,因为您可以从Time对象获取日期和时间。
script/generate model ShowTime time:datetime
script/generate model Show title:string description:text showtime:references
然后输入属于Jacob所引用的belongs_to / many_associations。我认为为showtime设置一个单独的模型会更好,并允许更多的灵活性。您还应该查看Time对象上的strftime方法,以根据自己的喜好格式化时间。
答案 2 :(得分:-1)
我认为您的想法非常合理(特别是对于没有编程经验的人)。如果您对实现此操作的“Rails方式”感兴趣,我建议您在the Rails guide中查看has_many
关系。 (我总体上推荐这本指南,因为它对Rails有很大帮助)