2017-08-04 46 views
0

我的影片实现的就是这样的一个API方法:Rails的渲染命令响应API错误

def change_status_operacao 

    if @user.change_status_operacao(params[:status], params[:empilhadeira_id].to_i, params[:motivo_id].to_i) 
     emp = ModeloEmpilhadeira.find(params[:empilhadeira_id].to_i) 
     ActionCable.server.broadcast "filas", {fila: "aguardando", object_dom: render(partial: "application/operacao_detalhe", locals:{ empilhadeira: emp})} 

     render json: { message: I18n.t("app.change_status_success") }, status: 200 
    else 
     render json: { errors: I18n.t("app.change_status_error") }, status: 400 
    end 

    end 

的问题是,当我在做render(partial: "application/operacao_detalhe", locals:{ empilhadeira: emp})渲染为我的行为电缆通道中的HTML内容,似乎用200个代码来响应我的那个内容的api调用,而不是渲染右下图。如果我拿出那个广播,它可以正常工作,但我需要将该呈现的HTML传递给我的频道。那么我该如何调用这个渲染方法,以便它不响应api调用?

回答

1

您可以在方法调用render只有一次。当您致电render生成部分时,该部分将用作响应。

尝试render_to_string通过信道发送的部分。

+0

得到它,但render_to_string越来越对我来说是同样的结果。是不是有另一种方法来获取HTML内容作为部分字符串? –