我是 Ruby 新手,请原谅我的无知。我真的不知道如何表达这个问题,所以这也可能是我在网上找不到答案的部分原因。
我正在使用 Rho Elements,并且我正在尝试将某些内容从一个页面传递到另一页面。我已经取得了一些进展,但遇到了一些我不明白的事情。我可以像这样传递一个ID
<input type="hidden" name="id" value="<%= @orderdetails.object %>"/>
然后我获取 ID(现在只执行此操作以确保我确实获取了 ID)
@id = @params['id']
然后重定向到另一个页面
redirect url_for(:action => :newpage, :id => @id).
这就是我的问题开始的地方。当我调试应用程序时,我绕过了重定向并输入:newpage
def newpage
@orderdetails = OrderDetails.find(@params['id'])
if @orderdetails
render :action => :newpage, :back => url_for(:action => :index)
else
redirect :action => :index
end
end
到达这里后我会检查
@params['id]
这就是显示的内容。
@params {"id"=>"{131113212443313.17}"}
"id" ""
@params {"id"=>"{131113212443313.17}"} 由 Eclipse 显示,当我闯入变量“id”时,显示“”。
为什么我可以看到我想用来获取刚刚创建的订单详细信息的 ID,但实际变量却为空?
**编辑:这是我试图传递的信息。
@params {"id"=>"131113212443313.17", "next"=>"asleftnext", "orderdetails"=>
{"AsFoundMeterRead"=>"", "AsFoundImage"=>""}}
"id" "131113212443313.17"
"next" "asleftnext"
"orderdetails" {"AsFoundMeterRead"=>"","AsFoundImage"=>""}
最佳答案
在 Controller 中使用params
,而不是@params
。此外,访问 key 的规范形式是 params[:id]
。
关于ruby-on-rails - 在 RhoMobile 上访问 Ruby 参数时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15098187/