저는 매우 무거운 레일 앱을 만들고 있습니다. API 데이터를 요청하는 함수를 호출하고 싶습니다. 함수를 실행하고 사용자 모델을 업데이트 할 모든 컨트롤러에서이 함수를 호출 할 수 있어야합니다.Rails API보기없이 GET 함수
어떻게하면됩니까? 어디서 쓰고 어떻게 액세스 할 수 있는지에 관해서는?
감사
당신은 이런보기없이 작업을 사용할 수 있습니다저는 매우 무거운 레일 앱을 만들고 있습니다. API 데이터를 요청하는 함수를 호출하고 싶습니다. 함수를 실행하고 사용자 모델을 업데이트 할 모든 컨트롤러에서이 함수를 호출 할 수 있어야합니다.Rails API보기없이 GET 함수
어떻게하면됩니까? 어디서 쓰고 어떻게 액세스 할 수 있는지에 관해서는?
감사
당신은 이런보기없이 작업을 사용할 수 있습니다모든 컨트롤러 상속의 ApplicationConttroller에서 같이 :
def action
data = params #Do your work here
respond_to do |format|
format.json { render json: data, status: :ok }
end
end
가 설정/routes.rb의 경로를 만들기 기본적으로 모든 컨트롤러에서 정의 된 모든 메소드/함수가 표시됩니다.
그러나 ApplicationController 범위 (보기, 헬퍼 등)의 외부에서 액세스하려는 경우 작업을 만들어야합니다. 'render'메소드와 옵션 (more : here)을 사용하여 렌더링 할 액션을 설정할 수 있습니다.
예 :
render :nothing => true
아니면 어떤 종류의 데이터를 반환하도록 해당 작업을 필요로하는 경우, 당신은 'JSON'사용할 수 있습니다 : 당신이 무슨 뜻인지에 대해 조금 혼란 스러워요
respond_to do |format|
format.json { render json: data, status: :ok }
end
:
get '/controller/action', to: 'controller#action'
/routes.rb를 설정하기 전까지는 모든 것이 의미가 있습니다. 반복 – Marcus
을 API. 여러 개의 Rails 뷰가 액세스 할 Controller 액션을 의미하며 User 모델을 업데이트 할 예정입니까? – Judy
보기가없는 컨트롤러 동작을 원합니다. 나는. 다른 기능에서 사용자 데이터를 업데이트하고 싶습니다. – Marcus