【问题标题】:Sinatra error added unsure of the issueSinatra 错误添加不确定问题
【发布时间】:2018-09-23 06:57:20
【问题描述】:

我遇到的问题是没有将 nil 隐式转换为字符串,我对 sinatra 很困惑,在重定向'/final' 上说它并且位置是一个 + 我真的需要知道问题是什么,因为它是一个我有需要在星期一交的学校作业

require "sinatra"

get '/' do 
    erb :namesex
end

post '/namesex' do 
    firstname = params[:firstname]
    lastname = params[:lastname]
    sirname = params[:sirname]
    redirect '/pizza?firstname=' + firstname + '&lastname=' + lastname + 
    '&sirname=' + sirname
end

get '/pizza' do 
    firstname = params[:firstname]
    lastname = params[:lastname]
    sirname = params[:sirname]
    erb :pizza, :locals => {:firstname => firstname, :lastname => lastname, 
:sirname => sirname}
end

post '/pizza' do
    firstname = params[:firstname]
    lastname = params[:lastname]
    sirname = params[:sirname]
    cheese_p = params[:cheese_p]
    peporini_p = params[:peporini_p]
    sausage_p = params[:sausage_p]
    fruit_p = params[:fruit_p]
    submit = params[:submit]
    redirect '/final?firstname=' + firstname + '&lastname=' + lastname + 
'&sirname=' + sirname + '&cheese_p=' + cheese_p + '&peporini_p=' + 
peporini_p + '&sausage_p=' + sausage_p + '&fruit_p=' + fruit_p + '&submit' + 
submit
end

get '/final' do 
    firstname = params[:firstname]
    lastname = params[:lastname]
    sirname = params[:sirname]
    cheese = params[:cheese]
    peporini = params[:peporini]
    sausage = params[:sausage]
    fruit = params[:fruit]
    erb :final, :locals => {:firstname => firstname, :lastname => lastname, 
:sirname => sirname, :cheese_p => cheese_p, :peporini_p => peporini_p, 
:sausage_p => sausage_p, :fruit_p => fruit_p, :submit => submit}
end

【问题讨论】:

  • 请编辑问题以提供您收到的确切错误消息。

标签: ruby-on-rails ruby html sinatra


【解决方案1】:

您的/final 路线如下所示:

firstname = params[:firstname]
lastname = params[:lastname]
sirname = params[:sirname]
cheese = params[:cheese]
peporini = params[:peporini]
sausage = params[:sausage]
fruit = params[:fruit]
erb :final, :locals => {
  :firstname => firstname, 
  :lastname => lastname, 
  :sirname => sirname,
  :cheese_p => cheese_p,
  :peporini_p => peporini_p, 
  :sausage_p => sausage_p,
  :fruit_p => fruit_p,
  :submit => submit
}

您传递给erb :final 的三个变量在上面的块中不存在——peporini_psausage_pfruit_p。这需要是peporinisausagefruit,基于您在上面所做的变量定义。

另外——我不想成为那个人,但你可能想在这上面进行拼写检查——你可能想要surname而不是sirname,以及pepperoni而不是peporini:)

【讨论】:

  • 谢谢你 josh 我非常感谢那里的帮助
  • 我更改了代码,但仍然没有解决问题仍然抛出同样的错误
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多