我有一个简单的审核系统,用户可以在其中选择多个星标,这会创建对create
操作的AJAX调用(如果审核是新的)。
如果评论已存在,我希望它改为调用update
操作。
现在,如果页面加载到空白评论,则第一次更改将调用create
,但所有后续请求也会调用,直到我完全重新加载页面。
如何在不刷新页面的情况下让create.js.erb
将评论表从create
更改为update
?
如果特定用户第一次进入该页面,他们应该能够创建评论,然后编辑他们自己的评论,而无需刷新页面。我的问题是创建然后更新转换没有发生。
答案 0 :(得分:0)
我不明白为什么你会这么想。它是否真的实现了只有一个评论的方式,它被越来越多的用户一次又一次地更新?因为一个明显的实现是每次创建一个全新的评论,而不是使用更新操作。
我的意思是:
class ItemReviewsController < ApplicationController
def create
@item = Item.find(params[:item_id])
@item.reviews.create(params[:review]) # TODO check for errors and redirect
end
end
有路线:
resources :items do
resources :reviews
end
如果我错了,请详细说明您对该解决方案的动机。