新手问题 我想在控制器代码中增加一个对话框,该怎么做?

alantsui · 2020年05月24日 · 最后由 xiaogui 回复于 2020年05月25日 · 2668 次阅读

请问各位兄长: 我想在控制器的某个动作中增加一个对话框,让用户确认,该怎么做? 目前只知道下面这样的做法:

redirect_to login_url, alert: "Invalid user/password combination"

但是,这个 alert 是 redirect_to 的参数。 我不需要 redirect_to,只是想问一下用户是否确认一个问题,然后根据用户的回答,改变某个算法的流程。 该怎么做呢?

我可能没说清楚,一个更简单的例子: 我想在 create 成功后,问一下用户是要跳转到 show 还是 index,这应该怎么做?

创建 Create view,不用 redirect_to

搜索一下 data: {confirm: " are you sure" } 会在进行一个操作的时候跳出来进行确认。

4 楼 已删除

第一种做法:在前端实现好询问框逻辑,提交表单的时候连带上 params[:redirect_to] ,然后在 create action 成功部分做 redirect_to 判断处理

第二种做法:create action 返回 json 结果,前端根据结果做询问处理,可以 js 跳转或者再增加一个 server action 专门做跳转

谢谢大家,社区真温暖!😜

类似这种吗?

<%= link_to 'Destroy',
             product, 
            method: :delete,
            data: { confirm: 'Are you sure?' } %>
需要 登录 后方可回复, 如果你还没有账号请 注册新账号