pet*_*hka 4 mysql sql activerecord many-to-many ruby-on-rails
我有waypoint两个属性的模型
并且模型route只不过是带有一些额外文本信息的航路点的排序数组.有些路线可以有相同的航点,所以我想将航路点与路线分开.
在路线内存储航路点的最佳方法是什么?
我看到几种方式:
waypoint_ids属性route,但在这种情况下,我将无法在一个SQL请求中获取路由和所有路点,因为路标ID将隐藏在序列化字符串中.创建一些具有此类参数的第三个模型
在路径position属性中将路线和航路点与路线点的多对多关联和存储位置连接起来.但它似乎过于复杂.
在这种情况下,对我来说最好的方法是什么?
我会选择第二个选项 - 使用一个类似acts_as_list的连接表(RouteWaypoints),以便您可以检索Route并正确排序所有Waypoint.这不是矫枉过正 - 数据库真的很擅长这个东西.