質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

0回答

328閲覧

RailsでAPIを使い、お天気画像をWebページに表示する

tmtmshohei

総合スコア16

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2017/07/06 09:49

編集2022/01/12 10:55

###前提・実現したいこと
現在お天気アプリを開発中です。

「open weather map」というAPIを使って
webページに画像を表示したいと思います。
Railsでの開発です。

1)(model)APIを叩いてアイコンを取得
2)(controller)それをURLに埋め込む
3)(view)Viewで表示

というのを考えています。

現在エラーが発生し、困っています。

何卒お力添えください。

###発生している問題・エラーメッセージ

uninitialized constant WeatherpageController

###該当のソースコード
コントローラー[weatherpage_controller.rb]

class WeatherpageController < ApplicationController

def city @weather_states_icon = Hoge::Fuga,weather_icon end

end

モデル[application_record.rb]

class ApplicationRecord < ActiveRecord::Base

self.abstract_class = true

module Hoge class Fuga class << self def weather_icon weather_info = Hoge.call_api icon = weather["weather_info"][0]["icon"] # 天気のアイコン画像取得 "http://openweathermap.org/img/w/#{icon}.png " # 埋め込み end def call_api uri = URI.parse("http://api.openweathermap.org/data/2.5/weather") JSON.parse(Net::HTTP.get(uri + "?id=1850147&units=metric&appid=9221b367f5e8d78e5ce816565f709ad9")) end end end end

end

ビュー[city.html.erb]

<h1>Weatherpage#city</h1> <%= @weather_states_icon %> <p>Find me in app/views/weatherpage/city.html.erb</p>

ルーティング[routes.rb]

Rails.application.routes.draw do get 'weatherpage/city' root "weatherpage#city" end

###試したこと
rootingや構文の精査

###補足情報(言語/FW/ツール等のバージョンなど)
Ruby [2.3.0]
rails [5.1.1]

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hnts

2017/07/08 18:14 編集

```rake routes```を実行した時はなにが出力されていますか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問