【发布时间】:2013-08-02 20:21:59
【问题描述】:
我现在很绝望,搜索了很多,但没有任何帮助。 我有导轨 3.1.0 我的小应用程序只是包含数据和排序过滤内容的表格。 我在 Heroku 上工作得很好,但后来我添加了一些会话变量来通过页面存储过滤参数。它在本地主机上运行完美,但 Heroku 显示“我们很抱歉,但出了点问题”。 我试过用 --stack cedar 来做 - 没有帮助 Heroku 日志没有说任何有用的信息。
我再说一遍 - 如果我将删除所有会话它工作完美。 :( 这是我使用会话的代码,在这里我看不到任何破坏 Heroku 的东西,只是常规会话:
def index
@all_ratings=Movie.vasta
@selected_ratings=[]
#if !session[:ratings].nil?
## redirect_to 'movies_path'
#end
if !params[:sort].nil?
session[:sr]=params[:sort]
end
if !params[:ratings].nil?
params[:ratings].each_key do |key|
@selected_ratings << key
end
elsif
@selected_ratings = session[:selre]
end
session[:selre]=@selected_ratings
@movies = Movie.order(session[:sr]).where("rating IN (?)", session[:selre])
@varka=session[:sr]
结束
非常感谢您。
日志
2013-08-01T18:34:24.021832+00:00 heroku[路由器]: at=info method=GET path=/movies host=myassnevercries.herokuapp.com fwd="88.85.159.248" dyno=web.1连接=2ms 服务=673ms 状态=500 字节=728
【问题讨论】:
-
它在本地工作吗?
-
是的,效果很好
-
如果没有排序参数并且会话中没有先前的值,您最终会尝试按 nil 排序
-
但是按 nil 排序意味着我只是不排序。当它为 nil 时它与 params[:sort] 一起使用,为什么它不能与同一事物的 session 一起使用?
-
我怀疑 order 方法期望你通过 nil。
标签: ruby-on-rails ruby session deployment heroku