如果使用javascript呈现视图,我还应该回复html吗?

时间:2016-09-22 03:05:00

标签: ruby-on-rails json ajax reactjs

我有一个与react集成的Rails应用程序,我的视图用react实现,包括html(JSX)。我注意到,当我的观点是常规的erb视图时,我有一些format.html回复,现在它们不是,我是否仍然会响应html以防万一(尽管我看不到用户如何能够如果他们的javascript已禁用,请使用我的应用程序)?

示例:

 def destroy
    @comment.destroy
    respond_to do |format|  
      format.json { head :no_content }
      format.html { redirect_to @question, notice: 'Comment was deleted.' }
    end
  end

我可以摆脱HTML回复吗?

1 个答案:

答案 0 :(得分:1)

是否保留是个人选择。我有时会这样做,但更少的LOC可以提供更清晰的代码。要删除它,您有几种选择。您可以保留respond_to,只需删除html,例如:

def destroy
  @comment.destroy
  respond_to do |format|  
    format.json { head :no_content }
  end
end

但您也可以使用以下内容删除每个操作中的respond_to(更少的LOC):

# put this LOC at the top of your controller, outside of any action
respond_with :json

# then each action is much simpler... you just assume it's always json
def destroy
  @comment.destroy
  head :no_content
end