我有一个简单的rails应用程序工作正常,但我想将其更改为使用ajax。我使用Ajax升级了其他部分,但是我遇到了控制器代码问题。所以:
1)我已将remote:true添加到form_for。
2)我遇到控制器代码问题。目前它看起来像这样:
def create #saving new materials
@material = Material.new(params[:material])
@material.user_id = current_user.id if current_user
if @material.save
flash[:success] = "Content Successfully Created"
redirect_to @material
else
render 'new'
end
end
问题是我知道我需要一个respond_to块,但我不知道该放在哪里。如果这是一个愚蠢的问题,我是新手如此道歉。
仅供参考 - js代码没问题。
答案 0 :(得分:1)
这样的事情应该有效:
def create #saving new materials
@material = Material.new(params[:material])
@material.user_id = current_user.id if current_user
respond_to do |format|
if @material.save
flash[:success] = "Content Successfully Created"
format.html { redirect_to @material }
format.js
else
format.html { render 'new' }
format.js
end
end
end