我有一个简单的 ruby/sinatra 应用程序,我正在尝试迁移到水晶/凯末尔。当用户提交表单选择时,sinatra 版本将参数作为哈希发布
{"category"=>["selection1", "selection2",..]}
然后我将选择传递给路径render index.erb
中的视图。post
但是在 kemal 中,我可以收集参数,但无法弄清楚如何在视图中访问它们。我不断收到错误undefined local variable or method
。
如何让视图访问提交的参数?
这是该post
路线的 sinatra 代码:
post '/' do
if params.values.flatten.length < 1
flash[:warning] = "Please choose at least one AED"
redirect '/'
else
params
erb :index
end
end
和相应的凯末尔代码:
post "/" do |env|
selected_drugs = env.params.body.fetch_all("drugs")
if selected_drugs.size < 1
env.flash["warning"] = "Please choose at least one AED"
render "src/views/index.ecr"
else
selected_drugs
render "src/views/index.ecr"
end
end
Kemal.run