Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在视图上显示从HTTparty获取请求_Ruby On Rails_Frontend_Httparty - Fatal编程技术网

Ruby on rails 在视图上显示从HTTparty获取请求

Ruby on rails 在视图上显示从HTTparty获取请求,ruby-on-rails,frontend,httparty,Ruby On Rails,Frontend,Httparty,我目前有一个名为example.rb的简单ruby文件。如何创建一个视图,允许用户将信息提交到表单中,然后将GET请求中的信息返回给他们?我了解如何从控制台使用这些请求,但不了解如何从前端使用这些请求 关于这一主题的资源也将不胜感激 require 'rubygems' require 'httparty' class StackExchange include HTTParty base_uri 'api.stackexchange.com' def initialize(se

我目前有一个名为
example.rb
的简单ruby文件。如何创建一个视图,允许用户将信息提交到表单中,然后将GET请求中的信息返回给他们?我了解如何从控制台使用这些请求,但不了解如何从前端使用这些请求

关于这一主题的资源也将不胜感激

require 'rubygems'
require 'httparty'

class StackExchange
  include HTTParty
  base_uri 'api.stackexchange.com'

  def initialize(service, page)
    @options = {query: {site: service}}
  end

  def questions
    self.class.get('/2.2/questions', @options)
  end

  def users
    self.class.get('/2.2/users', @options)
  end
end

stack_exchange = StackExchange.new('stackoverflow',1)
puts stack_exchange.users

确保HTTParty gem位于应用程序的
Gemfile

example.rb
为例,将其放入
/app/models/stack\u exchange.rb
-是的,文件名确实很重要[0](这不是纯粹的地方,但对于初学者来说,这是可以接受的)。删除底部用于测试的代码

routes.rb
中添加此路由:
get'/test'=>“application#test'

应用程序\u controller.rb
中添加以下方法:

def test
  stack_client = StackExchange.new('stackoverflow', 1)
  @users = stack_client.users
end
app/views/application/test.html.erb
中放入以下内容:



注意:否则我建议将视图添加到
ApplicationController
中,但由于我对您的应用程序一无所知,因此我将默认使用它

点击,您将看到预期的结果


[0]Rails在场景下发挥了很大的“魔力”——它实际上不是魔力,而是元编程——在场景中,Rails尝试假设了很多关于应用程序结构和命名约定的东西。如果您的类名为
Stackexchange
(注意小写的
e
),则
Stackexchange.rb
将自动“映射”到类
Stackexchange
。更多信息:

正是我想要的。谢谢这个一般概念指的是什么?只是为了让我对谷歌搜索更多信息有一个大致的了解。