2014-10-07 3 views
4

Какой должен быть формат для параметра: media, в приведенном ниже вызове, для обновления несколькими изображениями.Загрузка нескольких изображений в Twitter с помощью Ruby on Rails Twitter Gem

def twitter_status_update_with_media (twitter_client, text, media, opts) 
    twitter_client.update_with_media(self.text, media, opts) 
end 

Для одного изображения, File.new(filepath) работает отлично ..

ответ

5

Чтобы прикрепить несколько изображений в твиттере, сначала нужно загрузить изображения с помощью upload метода:

media_ids = %w(image1.png image2.png image3.png image4.png).map do |filename| 
    Thread.new do 
    twitter_client.upload(File.new(filename)) 
    end 
end.map(&:value) 

Это будет возвращаемые идентификаторы носителя, которые вы можете передать в параметр media_ids (как строка с разделителями-запятыми) метода update.

twitter_client.update("Tweet text", :media_ids => media_ids.join(',')) 
+0

Как я могу применить этот код для изменения образа или изображения профиля пользователя? – marriedjane875

+0

Если массив media_ids пуст, строка выше вернет ошибку: 'Twitter :: Error :: BadRequest: параметр media_ids недействителен.'. Быть осторожен. – Phil

 Смежные вопросы

  • Нет связанных вопросов^_^