这是一个令人难以置信的新问题,但我似乎找不到答案。
我正在构建一个大量使用外部 API 的应用程序,而且我对 Rails 还很陌生,所以要绕过它仍然有点困难。在我的一生中,我无法弄清楚如何在不写入模型的情况下接受用户输入并在我的应用程序中执行功能。
例如,我只想让用户输入 Twitter 用户名并将其显示在页面上。我知道如何制作一个表格来缓存模型中的搜索,但我不知道如何……让一个功能发生在页面上。我已经为此绞尽脑汁好几天了。
请帮忙?:/
这是一个令人难以置信的新问题,但我似乎找不到答案。
我正在构建一个大量使用外部 API 的应用程序,而且我对 Rails 还很陌生,所以要绕过它仍然有点困难。在我的一生中,我无法弄清楚如何在不写入模型的情况下接受用户输入并在我的应用程序中执行功能。
例如,我只想让用户输入 Twitter 用户名并将其显示在页面上。我知道如何制作一个表格来缓存模型中的搜索,但我不知道如何……让一个功能发生在页面上。我已经为此绞尽脑汁好几天了。
请帮忙?:/
您不需要模型即可使用 Rails,但如果您根本不需要 ActiveRecord,您可能会受益于Sinatra等更轻量级的框架。这并不能回答您的问题,但是如果您的应用程序真的没有数据库要求,那么值得考虑一下。
听起来您只是在尝试访问非资源丰富的用户输入,这可以通过 params 哈希在控制器中访问。因此,假设您为表单操作设置了有效路由,您可以使用控制器来提取 GET 或 POST 参数。
例如:
# You define a non-resourceful route in routes.rb for your form action.
get 'twitternames/show'
# Form action directs user to GET the following route after filling in the form.
http://example.com/twitternames/show?user=foo
# The controller action extracts the data.
def show
@user = params[:user]
# render the view unless you tell rails to do something else
end
# show.html.erb
<%= @user %>
创建正确的路线是关键。一旦您定义了一个可以将 URL 分成适当段的路由,其余的就会到位。