保存在Rails之前保存has_many项的正确方法

时间:2016-01-12 20:31:10

标签: jquery ruby-on-rails ajax many-to-many

我正在开发一个Rails应用程序。我的应用程序就像是一个设备定位系统,因此,我有名称,价格,身份等项目。这个项目是名为Equipament的模型,属于一个名为Event的模型,它具有属性日期,总价格等。

为了不止一次地使用一个设备模型,我创建了一个名为equipament_event的关系模型,用于表达多对多的关系,就像购物车一样,我可以在我的购物车中添加商品,当我确认时,保存订单通过辅助表格中具有订单ID和产品的商品。

我以为我会在表单事件中使用jquery和ajax的组合来执行添加和删除equipament_item,我可以在其中添加或删除事件中的设备。但是,要创建一个equipament_event,首先,我需要创建此事件的id,但是,如果事件仍然没有保存在数据库中,我如何获得添加equipament_event的id?我需要使用jquery和ajax进行价格的dinamic计算。

1 个答案:

答案 0 :(得分:1)

在这种情况下,我会将此信息保留到数据库中,但使用其他机制(如状态字段)来指示事件尚未最终确定。这允许您使用Rails表现良好的所有内容,而不是弄清楚如何将这些内容全部插入cookie或任何不持久的数据源。

这不是唯一的方法,但这就是我要做的。