2010-01-29 3 views
1

이 항목에 대한 항목이 많았지 만 데이터 저장 방법에 대한 전체 그림을 아직 보지 못했습니다. 필자는 야후 다가오는 API의 이벤트에 대한 정보를 파싱하고 저장하는 시스템을 만들고자 노력 중이다.Ruby on Rails에서 API의 XML 데이터를 구문 분석합니다.

URL은

<event> 
<id>489875230</id> 
<description>Open Bar</description> 
<status>Live</status> 
<latitude>29.74</latitude> 
<longitude>-95.37</longitude> 
</event> 
내가 REXML 등으로 읽어 봤는데

하지만 어떻게 내가 요소의 값을 내 모델로 저장할처럼 보이는 아주 간단한 XML을 반환? 목표는 XML의 모든 원하는 요소의 값을 텍스트 상자에 인쇄하여 데이터를 편집 한 다음 사용자가 데이터베이스에 저장하도록하는 것입니다. 어떻게 해야할지 생각해 보는 데 어려움을 겪고 있습니다. 한 번 파싱 된 데이터가있는 무언가.

어떤 도움, 링크 또는 제안 사항이 나에게 많은 도움이 될 것입니다.

답변

4

같은 속성을 가진 모델을 설정하고 xml을 해시로 구문 분석 한 다음 해시가있는 모델을 만드시겠습니까?

class CreateEvent < ActiveRecord::Migration 
    def self.up 
    create_table :events do |t| 
    t.id :id 
    t.string :decription 
    t.string :status 
    t.decimal :latitude 
    t.decimal :longitude  #(you'll want to set the precision and scale properly here) 
    end 
end 


data = Hash.from_xml <<EOX 
<event> 
<id>489875230</id> 
<description>Open Bar</description> 
<status>Live</status> 
<latitude>29.74</latitude> 
<longitude>-95.37</longitude> 
</event> 
EOX 

Event.create!(hash[:event]) 
관련 문제