来自 Ruby 在 Rails 表单上的用户输入

User Input from Ruby on Rails form

我试图在我的 rails 应用程序中获取用户输入值 (:url)。我相信它

params[:user_input]

但我不知道如何将它实现到我的控制器中。我是将它放在任何地方还是放在特定的方法中?

方法

 def index
 @posts = Post.all

 embedly_api = Embedly::API.new :key => '', :user_agent => 'Mozilla/5.0 (compatible; mytestapp/1.0; my@email.com)'
 url = params[:user_input]
 @obj = embedly_api.extract :url => :user_input
end

如何获取 user_input url 以便将其传递到哈希中???

您应该将代码更改为:

def index
   @posts = Post.all

   embedly_api = Embedly::API.new :key => '', :user_agent => 'Mozilla/5.0      (compatible; mytestapp/1.0; my@email.com)'
   @obj = embedly_api.extract :url => params[:user_input]
end

params 散列包含 HTML 表单控件名称到用户提供的值的映射。您可以使用 params[key_name].

访问每一个

在你的例子中,我想你想从 params[:url] 中创建一个局部变量。没关系。但是你这样使用它。

def index
  @posts = Post.all
  embedly_api = Embedly::API.new :key => '', :user_agent => 'Mozilla/5.0 (compatible; mytestapp/1.0; my@email.com)'
  url = params[:url]
  @obj = embedly_api.extract :url => url
end

但是,局部变量不是必需的,因此您可以通过删除局部变量并改为执行以下操作使代码更简洁:

@obj = embedly_api.extract :url => params[:url]