Ask A Question


You’re not receiving notifications from this thread.

Save external data in rails db, data structures

Catalin B asked in General


I need some help/advise on how to save third data in my database, also I'm interested in any tutorial or info about these topic.
I'm struggling to save data from third party api.
I get the result and I can display the result on my app. When I want to save data in my DB it saves only the id and the zone attribute.

Here is the response body

"from": 1,
"to": 100,
"total": 4490,
"auditData": {
"processTime": "157",
"timestamp": "2016-05-08 09:58:05.163",
"requestHost": "",
"serverId": "",
"environment": "[int]",
"release": ""
"destinations": [{
"code": "A1N",
"name": {
"content": "Ansan"
"countryCode": "KR",
"isoCode": "KR",
"zones": [{
"zoneCode": 1,
"name": "Ansan downtown"
"groupZones": []

In my Destination model where I have the destinations_table

attr_accessor :destination_id, :code, :country_code, :name, :zones

def self.set_destinations
url =""
response = HTTParty.get(url,
:query => { 
"fields" => 'code,name,countryCode,zones',
"language" => "ENG",
"from" => "1",
"to" => "5", 
"useSecondaryLanguage" => "false" 
:headers => add_signature_for_hotels
result = JSON.parse(response.body)
 result["destinations"].each do |value|
   Destination.create!("destination_id" => value["id"], "code" => value["code"], "name" => value["name"],
        "country_code" => value["countryCode"], "zone" => value["zones"][0]["name"] )

If I try in my console result[0]["code"] it gives my the result "A1N" but if I put in my method self.set_destinations it gives me an error. undefined method `[]' for nil:NilClass

At this moment only save the = 1 and zones["name"] = Ansan downtown, how can I save the data for destination_id, code, name, and country_code.
These is how looks my table after a request:

1   | null | null | null | null | Ansan downtown |  2016-05-07 20:19:34.546309 |    2016-05-07 20:19:34.546309

How can I save all the data in my DB?


Join the discussion
Create an account Log in

Want to stay up-to-date with Ruby on Rails?

Join 78,890+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.

    Screencast tutorials to help you learn Ruby on Rails, Javascript, Hotwire, Turbo, Stimulus.js, PostgreSQL, MySQL, Ubuntu, and more.

    © 2023 GoRails, LLC. All rights reserved.