sinatra - 使用 get 和 post 显示用户输入

sinatra - Using get and post to display user input

我是 Sinatra 的新手。我希望我主页上的用户向我的翻译页面提交一个词,并看到翻译页面中显示的词。这没有发生,我不知道为什么。我将不胜感激任何帮助。 这是我主页的代码:

<form action="/translate" method="post">
    <input type="text" name="message">
    <input type="submit">
</form>

这是我主页的代码:

require 'sinatra'
require 'sinatra/reloader' if development?

get "/home" do 
    erb :home
end

post "/translate" do
    params[:message]
    erb :translate
end

您需要将 message 传递给您的视图。

post "/translate" do
    erb :translate, locals: { msg: params[:message] }
end

现在您可以在视图中使用 msg,如下所示:

<h1><%= msg %></h2>