Ruby basecamp-wrapperを使用して Basecamp で TimeEntries を取得しようとしています。私はそれを機能させるために考えられるすべての組み合わせとさまざまな方法を試しましたが(以下を参照)、運がありません。私は Ruby と Rails の開発にかなり慣れていないので、何か間違ったことをしている可能性があります。
すべてのケースで、プロジェクト、todo アイテム、または時間エントリが実際に存在し、ブラウザーで API を手動でテストして Basecamp API 経由で返されていることを確認しました。
最初に、次を使用して特定の todo アイテムの TimeEntries を取得しようとしました。
Basecamp::TimeEntry.find(:all, :params => { :todo_item_id => 123 })
しかし、エラーが発生します: ActiveResource::MissingPrefixParam: project_id prefix_option is missing
そこで、project_id を含めてみました。
Basecamp::TimeEntry.find(:all, :params => { :todo_item_id => 123, :project_id => 456 })
しかし、todo アイテムに確実に時間エントリがあり、指定されたプロジェクトに属している場合は、nil の結果が返されます。
次に、実際の todo アイテムから TimeEntries を取得しようとしました。
todo_item = Basecamp::TodoItem.find(:all, :params => { :todo_list_id => 17216468}).first
todo_item.time_entries
しかし、再び ActiveResource::MissingPrefixParam: project_id prefix_option is missing エラーが発生します。
以下を使用して、ページ内のプロジェクトのすべての TimeEntries を取得しようとしました。
Basecamp::TimeEntry.all(123, 1)
エラーが表示されます: ActiveResource::MissingPrefixParam: todo_item_id prefix_option is missing
私は今何をしようとしているのか/何をすべきかについてかなり困惑しています.