检索使用嵌套属性插入的记录

时间:2011-06-23 08:46:56

标签: ruby-on-rails nested-attributes

我正在使用accept_nested_attributes来保存记录。我想访问创建的子记录的ID。   例如来自表单的params[:client] subscriptions_attributesnested_attributesClient has_many :subscriptions。   当我打电话给@client.save时。它将保存client以及subscriptions。我想访问插入的订阅的ids

我的一个解决方案是在保存记录之前收集subscription_ids,然后在保存之后再次收集,然后(after_ids - before_ids)

是否有任何导轨方式或万无一失的方法来执行此操作?

1 个答案:

答案 0 :(得分:1)

这可以是另一种选择: 您可以在保存客户端之前保存时间,然后检索在该时间之后创建的记录。 例如。 before_create_time = Time.now

然后,保存后

inserted_subscriptions = @client.subscriptions.where('created_at > ?', before_create_time)