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

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

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

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Ruby on Rails

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

Q&A

解決済

1回答

1814閲覧

自分のtwitter投稿画像をサイトに掲載したい。

Takuma_Tanaka

総合スコア128

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Ruby on Rails

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

0グッド

0クリップ

投稿2016/04/25 01:31

見ていただいてありがとうございます。
表題の通り、自分のtwitter投稿をJSON形式で取得しRailsを使用してサイトに掲載しようとしています。
ユーザー名・投稿文言・投稿日時は正常に表示できるのですが、画像を表示しようとすると以下のエラーが発生します。

・エラーメッセージ:private method `entities' called for #<Twitter::Tweet id=****>
Did you mean? entities?

controller

class TwitterController < ApplicationController require 'twitter' def index @client = Twitter::REST::Client.new do |config| config.consumer_key = '****' config.consumer_secret = '****' config.access_token = '****' config.access_token_secret = '****' end end end

index.html.erb

<!DOCTYPE html> <html> <head> <title>TwitterRails</title> <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %> <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> <%= csrf_meta_tags %> </head> <body> <% @client.home_timeline.each do |tweet| %> <%= tweet.created_at %><br> <%= tweet.entities.media[0].media_url %><br> <%= tweet.user.name + ':' + tweet.text %><br> <% end %> </body> </html>

twitter API Console Toolで取得しているJSON

[ { "created_at": "Tue Apr 12 10:42:23 +0000 2016", "id": 719838064634253300, "id_str": "719838064634253314", "text": "きれいだね~\n#夜景 https://t.co/xoKu25hPH4", "entities": { "hashtags": [ { "text": "夜景", "indices": [ 7, 10 ] } ], "symbols": [], "user_mentions": [], "urls": [], "media": [ { "id": 719838063757643800, "id_str": "719838063757643777", "indices": [ 11, 34 ], "media_url": "http://pbs.twimg.com/media/Cf1g57YUUAElSLI.jpg", "media_url_https": "https://pbs.twimg.com/media/Cf1g57YUUAElSLI.jpg", "url": "https://t.co/xoKu25hPH4", "display_url": "pic.twitter.com/xoKu25hPH4", "expanded_url": "http://twitter.com/tanaka24177269/status/719838064634253314/photo/1", "type": "photo", "sizes": { "medium": { "w": 600, "h": 377, "resize": "fit" }, "thumb": { "w": 150, "h": 150, "resize": "crop" }, "small": { "w": 340, "h": 214, "resize": "fit" }, "large": { "w": 960, "h": 603, "resize": "fit" } } } ] },

エラー内容の「entities」をコピペしても同様のエラーが出てしまい、画像が表示されない状態です。
どうすれば画像が正常に表示されるのかご教示お願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

このあたりが参考になるかと思います。
http://www.rubydoc.info/gems/twitter/Twitter/Tweet

投稿2016/04/25 02:08

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

Takuma_Tanaka

2016/04/25 02:27

ありがとうございます。 Entitiesがすでにメソッドに入っているので、中に入れなくて良かったんですね。 お陰さまで画像の情報が取得できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問