저는 Rails를 처음 사용했으며이 문제로 인해 한동안 혼란 스러웠습니다.
번역 앱을 만들고 싶습니다. 사용자가 단어가 포함 된 링크를 클릭하면 Rails 컨트롤러가 외부 API 호출을 통해 번역을 가져오고, 단어와 번역을 저장 한 다음 페이지를 새로 고치지 않고 번역을 표시하기를 원합니다.
내가 가진 특정 문제는 컨트롤러에서 js 파일로 전달할 문자열 (번역이 될)을 가져 오는 것입니다. 그러면 HTML을 업데이트하여 번역을 표시 할 수 있습니다.
컨트롤러에서 (texts_controller.rb) :
def createword
@word = Word.new(word_params)
@word.save
@translation = "Some string"
respond_to do |format|
format.js
end
end
자바 스크립트 (createword.js.erb)에서
console.log("done");
$(".message").html(<%= @translation %>);
@translation을 포함하는 두 번째 줄을 삭제하면 자바 스크립트가 잘 작동하고 콘솔에 "완료"를 기록합니다. 그러나 해당 줄을 포함하면 아무것도 작동하지 않습니다.
이 변수를 어떻게 js로 가져올 수 있습니까? 또는 가능하지 않은 경우 뷰로 가져 오는 가장 좋은 방법은 무엇입니까?
나는 이것을 시도하지 않았지만 따옴표를 추가하면 아마도 원하는 것을 할 수 있습니다.
$(".message").text("<%= @translation %>");
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다