私はAngularJSを試していますが、Railsアプリケーションで定義されたネストされたリソースからデータを取得したいと考えています。
私は次の行を書きました:
UserMission = $resource("/users/:user_id/user_missions/:id", {user_id: "@user_id", id: "@id"}, {update: {method: "PUT"}})
$scope.user_missions = UserMission.query()
次のエラーが発生します。
Processing by UsersController#show as JSON
Parameters: {"id"=>"user_missions"}
User Load (0.6ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1 [["id", 1]]
User Load (0.5ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1 [["id", "user_missions"]]
Completed 404 Not Found in 10ms
ActiveRecord::RecordNotFound (Couldn't find User with id=user_missions):
app/controllers/users_controller.rb:100:in `current_resource'
app/controllers/application_controller.rb:34:in `authorize'
私のrailsルートは次のように構成されています。
resources :users do
resources :user_missions
end
「@id」がわからないのが原因だと思います。それはangularjsサイトの「データオブジェクト」から外れていると言っていますが、それが何を意味するのか正確にはわかりません。
どんな助けでもありがたいです。
アップデート
別の質問。has_many :missions, through: :user_missions
ネストされたリソース(Userの例)を使用したangularjsを使用したrailsの例は見つかりませんでした$resource
。$resource
ネストされたリソース(を使用して)をajaxで操作するangularjsの良い例はありますか?