2015-02-03 3 views
0

저는 코딩 초보자이며 현재 this tutorial에서 일하고 있습니다. 그리고 저는 약간의 문제가 있습니다. 나는 정말로 도움이 될 것입니다!Ember 클라이언트 측에서 내 Rails 백엔드 API 정보에 액세스하려면 어떻게해야합니까?

내 문제는 : 내 레일 백엔드에서 외부 API를 사용하고 있습니다. 나는 모델을 사용하지 않고있다. 그러나이 튜토리얼에서는 레일스 클래스에서 API 정보에 액세스하고자 할 때이 섹션의 모델에 액세스하도록 요청하고있다.

Library.BooksRoute = Ember.Route.extend({ 
    model: function() { 
    return this.get('store').find('book'); 
    } 
}); 

가 어떻게 내 API에 액세스하는 그 코드를 변경할 수 있습니다

이는 그들이 나를이 원하는 무엇인가? HTTP 파티를 사용 중입니다.

여기 내 활동 컨트롤러 같은 모습의 약간의 :

class BooksController < ApplicationController 
    respond_to :json 
    include HTTParty 
    base_uri '' # took this out 
    def index 
    render json: self.class.get("") # took out my link with API key here 
    end 
end 

사전에 감사!

답변

0

엠버 코드가 정확한 것처럼 보입니다. 나는 혼란의 일부가 엠버가 레일 모델과 다른 자체 모델을 가지고 있다고 생각합니다.

이 자습서는 책 끝점을 감길 것을 요청합니다. 그렇게 할 수 있음을 확인하고 책을 나타내는 JSON 객체를 돌려 받고 있습니까?

올바른 JSON을 가져오고 Ember가 ActiveModelAdapter를 사용하도록 설정되어있는 경우 (ember-rails에서 자동으로 수행함) 자습서에서 모델 경로의 this.store.find ('book')가 레일즈 API 책 끝점에 GET 요청을하십시오. 이를 확인하기 위해 크롬 개발자 도구에서 네트워크 추적을 수행 할 수 있습니다.

이것이 작동하지 않는다는 증거가 있습니까?

+0

내가 요청을하는 방법을 혼란스럽게 생각합니다. 지금 당장 모델에 액세스하려고하지 않고 (올바른 경우), HTTParty를 사용하는 Ruby 컨트롤러에 액세스하려고하고 있습니다. 외부 API 호출 .. Ember.js에서 API를 어떻게 호출 할 수 있는지 잘 모르겠다. Ember.route.extend 부분은 나에게 가장 혼란 스럽다. 나는 모델 : function code를 사용하기를 원하지만 내 컨트롤러 및 httparty에서 내 API의 정보를 모델에 액세스하지 않으려 고합니다. 도와 주셔서 정말 감사합니다! 정말 감사. – simon292

+0

다시 한번 감사드립니다. 나는 일주일 동안이 일에 매달 렸습니다. HTTParty를 사용할 수 있고 내 API 정보에 액세스 할 수 있기를 원하지만 어떻게 될지 모르겠다. – simon292

+0

자습서를 따라 다른 모든 것을 설정했다고 가정하면 Ember는 자동으로 레일 컨트롤러에 요청을 보내야한다. API)를로드 할 때 (웹 브라우저에서 해당 경로의 URL을 방문하는 경우). emberjs.com에서 자습서를 읽고 ember의 기본 사항에 대해 더 깊이 이해하고 API와의 통합 작업을 천천히 진행하는 것이 좋습니다. – benzo

관련 문제