Rails 4 将 Flash 通知从 REST 重定向到 ActiveAdmin API
Rails 4 Redirect flash notice to ActiveAdmin from REST API
嗨,我想检查我的 REST params
中通过
设置的布尔值
if params[:myboolean] == true
...
end
在我的 api
控制器中,并在我的 AciveAdmin 面板中条件为 true
时触发 flash[:alert]
事件。我怎样才能做到这一点?
编辑
def update
respond_to do |format|
if params[:myboolean]
Rails.logger.info "***boolean is true***"
end
我从来没有看到记录器消息。我检查参数的方式是错误的吗?
更新
我通过 curl -u test -X PUT http://127.0.0.1:3000/api/...?myboolean\=true -d ''
发送参数,它在我的数据库中得到更新,所以我认为这不是参数的问题更多的是我检查参数的方式
在这种情况下,我通常会这样做:
puts "params: #{params}"
应该打印发送到该方法的所有参数,您应该查看是否设置了 params[:myboolean]
。
默认情况下,参数以字符串形式发送,它们并不总是神奇地更改为 bool/integers,因此您必须将检查更改为:
if params[:myboolean] == 'true'
注意引号,然后你就比较了(两个字符串)。
您可能还会将布尔值设为 1 或 0,因此您可能也必须匹配它:
if ['true','1'].include? params[:myboolean].to_s
通过对参数执行 to_s,您还可以确保如果它确实作为 anb actual bool 通过,那么检查仍然有效
嗨,我想检查我的 REST params
中通过
if params[:myboolean] == true
...
end
在我的 api
控制器中,并在我的 AciveAdmin 面板中条件为 true
时触发 flash[:alert]
事件。我怎样才能做到这一点?
编辑
def update
respond_to do |format|
if params[:myboolean]
Rails.logger.info "***boolean is true***"
end
我从来没有看到记录器消息。我检查参数的方式是错误的吗?
更新
我通过 curl -u test -X PUT http://127.0.0.1:3000/api/...?myboolean\=true -d ''
发送参数,它在我的数据库中得到更新,所以我认为这不是参数的问题更多的是我检查参数的方式
在这种情况下,我通常会这样做:
puts "params: #{params}"
应该打印发送到该方法的所有参数,您应该查看是否设置了 params[:myboolean]
。
默认情况下,参数以字符串形式发送,它们并不总是神奇地更改为 bool/integers,因此您必须将检查更改为:
if params[:myboolean] == 'true'
注意引号,然后你就比较了(两个字符串)。
您可能还会将布尔值设为 1 或 0,因此您可能也必须匹配它:
if ['true','1'].include? params[:myboolean].to_s
通过对参数执行 to_s,您还可以确保如果它确实作为 anb actual bool 通过,那么检查仍然有效