2017-12-31 38 views
0

ich einen Hash von Ergebnissen aus get_connection mit Koala Juwel retten, die so etwas wie dieses Hashjson Codeblock in verschachteltem Modell Rubin Schienen

=> [{"album"=>{"created_time"=>"2011-05-07T23:06:33+0000", "name"=>"Timeline Photos", 
"id"=>"10150170707957371"}, "images"=>[{"height"=>1150, "source"=>"https://scontent.xx.fbcdn.net/v/t31.0-8/24173690_10155086191327371_1463889654041392146_o.jpg?oh=8adec503c6066dc20d1be5d71262a03e&oe=5AFEED4A", 
"width"=>2048}, {"album"=>{"created_time"=>"2011-05-07T23:06:33+0000", "name"=>"Timeline Photos", 
"id"=>"10150170707957371"}, "images"=>[{"height"=>1188, "source"=>"https://scontent.xx.fbcdn.net/v/t31.0-8/24302317_10155086179077371_4000719398736973936_o.jpg?oh=6eba399a4067b847cb38ef245e687321&oe=5AFC195A", 
"width"=>2639}]}] 

Ich war auf der Suche speichern Fotos wie Schienen tun mit dem params sieht aber realisierte es erstellt nur eine Galerie für jedes Foto mit einem do Block.

Wie kann ich meine verschachtelten Bildattribute ausführen, so dass sie in einer Galerie gespeichert werden. Sogar ein Juwel, das mir helfen könnte. Ich schaute auf den Rails/Jbuider-Edelstein, aber nicht sicher, ob es einfacher ist, ohne einen Edelstein?

+0

Haben Sie 'User',' Gallery' und 'Picture' Modelle? Haben "Gallery" -Modelle viele Bilder und akzeptieren verschachtelte Attribute für sie? – user3309314

+0

ja und alles ist richtig gespeichert. Ich schaue nur auf den Jbuilder-Edelstein und es sagt, dass Sie Attribute extrahieren können, also nur atm überprüfen. –

Antwort

0

Dies wurde mit Jbuilder behoben.

def to_jbuilder 
    Jbuilder.new 
end 

def photos(u) 
    json = to_jbuilder 
    first_page_photos = u.facebook.get_connection("me", "photos?fields=album,images,event,height,width,link,place&type=uploaded") 
    photos = json.photo first_page_photos do |photo| 
    json.fb_album_created_time photo['album']['created_time'] 
    json.fb_album_name photo['album']['name'] 
    json.fb_album_id photo['album']['id'] 
    json.fb_source photo['images'][0]['source'] 
    json.fb_height photo['images'][0]['height'] 
    json.fb_width photo['images'][0]['width'] 
    json.fb_link photo['link'] 
    json.fb_pic_id photo['id'] 
    end 
    params = { gallery: { name: 'Facebook Pictures', pictures_attributes: photos }} 
    gallery = u.galleries.new(params[:gallery]) 
    gallery.save! 
end