如何从后端的 class 中的前端访问 params[:name]
How to access params[:name] from the front-end inside of a class in the back-end
如何访问我的 session[:name]
,它位于我的 Sinatra 应用程序的前端,在我后端的 class 中?我想这样做,这样我就可以将我所有的消息(人们说的)存储在 class 中,以便能够快速更改我的后端消息,这样我就可以在需要时更改它,而不必通过整个前端在那里编码。
这是前端部分:
post '/startgames' do
play = params[:playgame]
session[:name] = params[:name]
session[:age] = params[:age].to_i
if play == "Joe's Trippy Adventure Game" && session[:age] > 17
erb :trippygame1, :locals => {:message1 => "Great #{session[:name]} you are old enough to Play Joe's Trippy Adventure Game.",
:message2 => "One day #{session[:name]} is sitting around Smoking a bong when someone knocks on the door.",
:message3 => "Do you get up and answer it?"}
elsif play == "Joe's Trippy Adventure Game" && session[:age] < 17
erb erb :safari1, :locals => {:message1 => "#{session[:name]} You are to young to play Joe's Trippy game how about a nice Lepoard adventure game?", :age => ""}
elsif play == "Jade's Safari Adventure Game" && session[:age] < 17
erb :safari1, :locals => {:message1 => "#{session[:name]} Chose to play Jade's Safari Adventure Game.", :age =>""}
else play == "Jade's Safari Adventure Game" && session[:age] > 17
erb :safari1, :locals => {:age => "Hey man Aren't You a little old to play this type of game?",
:message1 => "#{session[:name]} Chose to play Jade's Safari Adventure Game."}
end
end
这是后端部分:
class Start_messages
def welcome
"Welcome To Joe's Games."
end
def name_age
"Enter your name & age to start."
end
def to_start_jade
"So you wanna play Jade's Safari Adventure game ?"
end
def to_start_joe
"If you want to play Joe's Trippy Adventure Game"
end
def start_joe
"Great #{session[:name]} you are old enough to Play Joe's Trippy Adventure Game."
end
end
我真的希望能够将所有消息保存在 class 中而不是在前端进行硬编码。另外,在后端测试它们对我来说会更容易,因为我还没有开始测试前端的东西……我正在学习 TDD,所以测试测试测试 :)
谢谢 Dave 你的建议让我走上了正确的方向。这就是我所做的,以防它会帮助别人。这部分用于后端
def start_joe(name)
"Great #{name} you are old enough to Play Joe's Trippy Adventure Game."
end
def start_jade(name)
"#{name} Chose to play Jade's Safari Adventure Game."
end
def too_young(name)
"#{name} You are too young to play Joe's Trippy game how about a nice Lepoard adventure game?"
end
def too_old(name)
"Hey #{name} Aren't You a little old to play this type of game?"
end
对于前端。
post '/startgames' do
play = params[:playgame]
session[:name] = params[:name]
session[:age] = params[:age].to_i
name = session[:name]
if play == "Joe's Trippy Adventure Game" && session[:age] > 17
erb :trippygame1, :locals => {:message1 => message.start_joe(name),
:message2 => "One day #{session[:name]} is sitting around Smoking a bong when someone knocks on the door.",
:message3 => "Do you get up and answer it?"}
elsif play == "Joe's Trippy Adventure Game" && session[:age] < 17
erb erb :safari1, :locals => {:message1 => message.too_young(name) , :age => ""}
elsif play == "Jade's Safari Adventure Game" && session[:age] < 17
erb :safari1, :locals => {:message1 => message.start_jade(name), :age =>""}
else play == "Jade's Safari Adventure Game" && session[:age] > 17
erb :safari1, :locals => {:age => message.too_old(name),
:message1 => message.start_jade(name)}
end
end
工作仍在进行中,但感谢您的建议,现在完全有道理我不知道为什么我没有想到这个
如何访问我的 session[:name]
,它位于我的 Sinatra 应用程序的前端,在我后端的 class 中?我想这样做,这样我就可以将我所有的消息(人们说的)存储在 class 中,以便能够快速更改我的后端消息,这样我就可以在需要时更改它,而不必通过整个前端在那里编码。
这是前端部分:
post '/startgames' do
play = params[:playgame]
session[:name] = params[:name]
session[:age] = params[:age].to_i
if play == "Joe's Trippy Adventure Game" && session[:age] > 17
erb :trippygame1, :locals => {:message1 => "Great #{session[:name]} you are old enough to Play Joe's Trippy Adventure Game.",
:message2 => "One day #{session[:name]} is sitting around Smoking a bong when someone knocks on the door.",
:message3 => "Do you get up and answer it?"}
elsif play == "Joe's Trippy Adventure Game" && session[:age] < 17
erb erb :safari1, :locals => {:message1 => "#{session[:name]} You are to young to play Joe's Trippy game how about a nice Lepoard adventure game?", :age => ""}
elsif play == "Jade's Safari Adventure Game" && session[:age] < 17
erb :safari1, :locals => {:message1 => "#{session[:name]} Chose to play Jade's Safari Adventure Game.", :age =>""}
else play == "Jade's Safari Adventure Game" && session[:age] > 17
erb :safari1, :locals => {:age => "Hey man Aren't You a little old to play this type of game?",
:message1 => "#{session[:name]} Chose to play Jade's Safari Adventure Game."}
end
end
这是后端部分:
class Start_messages
def welcome
"Welcome To Joe's Games."
end
def name_age
"Enter your name & age to start."
end
def to_start_jade
"So you wanna play Jade's Safari Adventure game ?"
end
def to_start_joe
"If you want to play Joe's Trippy Adventure Game"
end
def start_joe
"Great #{session[:name]} you are old enough to Play Joe's Trippy Adventure Game."
end
end
我真的希望能够将所有消息保存在 class 中而不是在前端进行硬编码。另外,在后端测试它们对我来说会更容易,因为我还没有开始测试前端的东西……我正在学习 TDD,所以测试测试测试 :)
谢谢 Dave 你的建议让我走上了正确的方向。这就是我所做的,以防它会帮助别人。这部分用于后端
def start_joe(name)
"Great #{name} you are old enough to Play Joe's Trippy Adventure Game."
end
def start_jade(name)
"#{name} Chose to play Jade's Safari Adventure Game."
end
def too_young(name)
"#{name} You are too young to play Joe's Trippy game how about a nice Lepoard adventure game?"
end
def too_old(name)
"Hey #{name} Aren't You a little old to play this type of game?"
end
对于前端。
post '/startgames' do
play = params[:playgame]
session[:name] = params[:name]
session[:age] = params[:age].to_i
name = session[:name]
if play == "Joe's Trippy Adventure Game" && session[:age] > 17
erb :trippygame1, :locals => {:message1 => message.start_joe(name),
:message2 => "One day #{session[:name]} is sitting around Smoking a bong when someone knocks on the door.",
:message3 => "Do you get up and answer it?"}
elsif play == "Joe's Trippy Adventure Game" && session[:age] < 17
erb erb :safari1, :locals => {:message1 => message.too_young(name) , :age => ""}
elsif play == "Jade's Safari Adventure Game" && session[:age] < 17
erb :safari1, :locals => {:message1 => message.start_jade(name), :age =>""}
else play == "Jade's Safari Adventure Game" && session[:age] > 17
erb :safari1, :locals => {:age => message.too_old(name),
:message1 => message.start_jade(name)}
end
end
工作仍在进行中,但感谢您的建议,现在完全有道理我不知道为什么我没有想到这个