Rails:respond_to js 不使用文本呈现是一个字符串
Posted
技术标签:
【中文标题】Rails:respond_to js 不使用文本呈现是一个字符串【英文标题】:Rails: respond_to js do not render with text is a String 【发布时间】:2017-06-28 08:17:33 【问题描述】:我有一个响应格式 js 的代码
app = CheckAppExist.new(params[:url])
if(app.exist?)
cookies[:package_name] = app.package_name
cookies[:app_url] = app.app_url
respond_to do |format|
format.html
format.json
format.js render :text => "200"
end
else
respond_to do |format|
format.html
format.json
format.js render :text => "Url or Package Name is wrong ", status: :unprocessable_entity
end
end
上面的代码是有效的,但是当我改变响应文本时
format.js render :text => "200"
给format.js render :text => "some text here"
它不起作用。我使用 rails ujs 发送和接收请求。
当文本是字符串数字(“200”)时,运行方法.on("ajax:success",...)
,当文本渲染为字符串时,运行方法.on("ajax:error",...)
。
我不明白上述错误,任何人都可以帮助我。 谢了。
【问题讨论】:
请详细说明“它不起作用”是什么意思。抛出的具体错误是什么? 【参考方案1】:试试这个:
render inline: 'your text'
【讨论】:
以上是关于Rails:respond_to js 不使用文本呈现是一个字符串的主要内容,如果未能解决你的问题,请参考以下文章
Rails 5 API 控制器中未定义的实例方法“respond_to”
无法使用 Attachinary 在 Heroku 上运行 Rails 控制台:未定义方法 `respond_to' for Attachinary::CorsController:Class