사용자가 텍스트를 편집하고 붙여 넣을 수있는 편집기가 있으며 변경 내용은 AJAX를 통해 자동으로 서버에 저장됩니다.하나의 업데이트 요청에서 여러 번 업데이트되는 레일
는 JS 통해 I는 다음과 같이, 텍스트 영역의 상태를 모니터링 : I 에마 리 의해 here로부터 대답을 추출
$("#editor-area").bind "input propertychange", ->
content = $("#editor-area").val()
updateRequest = $.ajax(
url: url
data:
texto:
contenido: content
type: "PUT"
)
.
단일 문자를 쓰는 순간 하나의 호출이 수행되고 처리되지만 여러 번 콘솔에 동일한 정보가 표시됩니다. 그것들은 너무 커서 내 콘솔이 오버런되어 과거의 호출을 덮어 쓰기 시작합니다. 똑같은 일을합니다 : 새로운 텍스트로 레코드를 업데이트하십시오.
는컨트롤러의 업데이트 방법은 외모도
def update
respond_to do |format|
if @text.update(text_params)
format.html {
redirect_to user_text_path(current_user, @text)
}
format.json { render :json => @texto }
else
format.html { redirect_to edit_user_path(@user, @text) }
end
end
end
이 해당 옵션에 대한 before_filter
같은
def set_text_and_user
@text = get_stuff_from_Db
@user = @text.user
end
나는이 일을 디버깅하기 위해 노력했습니다,하지만 지금까지 나를 패배했다 . 무슨 일이 일어날 지 생각 해봐?
왜 특별한 이유가 허용 된 답변 (http://stackoverflow.com/a/7165578/519295)에 가지 않았습니까? – bassneck
예, 동일한 결과를 얻었지만 코드가 더 많습니다. 여러 번 업데이트가 발생했습니다. – Sebastialonso