如何在不将信息放入模型的情况下利用用户输入?

时间:2012-04-22 06:51:26

标签: ruby-on-rails-3 twitter

这是一个令人难以置信的新问题,但我似乎无法找到答案。

我正在构建一个大量使用外部API的应用程序,而且我对Rails相当新,所以它仍然有点粗糙。在我的生活中,我不能想出如何接受用户输入并在我的应用程序中执行函数而无需写入模型。

例如,我只想让用户输入Twitter用户名并将其显示在页面上。我知道如何制作一个表单来缓存模型中的搜索,但我无法弄清楚如何...在页面上发生一个函数。我已经在这几天打破了我的大脑。

请帮帮忙? :/

1 个答案:

答案 0 :(得分:1)

不需要模型来使用Rails,但如果你根本不需要ActiveRecord,你可能会受益于像Sinatra这样的轻量级框架。这不能解答您的问题,但是如果您的应用程序确实没有数据库要求,那么值得考虑。

听起来你只是试图访问非资源丰富的用户输入,可以通过params哈希在控制器中访问。因此,假设您为表单操作设置了valid route,则使用your controller来提取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分成适当段的路由,剩下的就会到位。