我有一个User模型,它接受组的嵌套属性。如果用户尝试加入一个不存在的组,我想首先确认是否真的需要新组(即防止打字错误),然后创建组或重新呈现新操作。
目前我正在使用first_or_initialize
来检查组的存在,如果它不存在,我会使用@new_group = true
标志重新呈现表单,导致视图显示模态使用“是”'确认组创建的对话框或者没有'响应。然后,create
操作会查找是或否的params["commit"]
,并采取相应的行动。
这很有效,但它非常笨重,特别是因为我必须通过对话框将许多其他参数作为隐藏字段传递。
有没有更好的方法在first_or_create / first_or_initialize方法中添加确认?
答案 0 :(得分:1)
您可以通过ajax检查该组是否存在,然后在客户端进行确认,然后只有在已经确认后才会插入,这样会更直接。