これは私がアクセスする必要があるURLです
/api/v1/projects/{id}/tickets/{id}/time_entries
これまでのところ、これが私の Project ActiveResource モデルです...すべてのプロジェクトに基づいてプロジェクトとチケットを取得でき、チケットに基づいてすべての time_entrie を取得したい
class Project < ActiveResource::Base
self.site = "https://xyz.unfuddle.com/api/v1"
def self.get_time
Project.all.each do |project|
project.get(:tickets).each do |ticket|
#from here I want to get to time_entrie
#after the last_edit
TimeEntry.addparams({project: project.id,ticket: ticket["id"]})
end
end
end
これは 1 つの ActiveResource モデルだけで可能ですか、それとも Project と別の ActiveResource Ticket の間に何らかの関連付けを行う必要がありますか?
// Rails api のドキュメントで関連付けについては何も見ていません。
//編集 このような新しい TimeEntry ActiveResource モデルを追加しました
class TimeEntry < ActiveResource::Base
self.collection_name="time_entries"
def self.addparams(params)
self.site = "http://xyz.unfuddle.com/api/v1/projects/#{params[:project]}/tickets/#{params[:ticket]}/"
self.all
end
Project.get_time を実行すると、
ActiveResource::Redirection: Failed. Response code = 302. Response message = Found. => https://xyz.unfuddle.com/projects/38664/tickets/6336/time_entries