ruby-on-rails-3 - 带有嵌套资源的 Angular JS ngResource

标签 ruby-on-rails-3 json angularjs nested-forms nested-attributes

我正在尝试 angular JS,我想从 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 site 的“数据对象”我不确定这意味着什么。

任何帮助将不胜感激谢谢。

更新

另一个问题。我还没有找到任何使用嵌套资源的带有 angularjs 的 rails 示例(示例用户 has_many :missions, through: :user_missions)和 $resource .是否有 angularjs 使用 ajax 操作嵌套资源(使用 $resource)的好例子?

最佳答案

通读我的 answer对于您之前的问题,您应该在调用中作为参数传递的对象中包含这两个参数的值,即。例如:

$scope.user_missions = UserMission.query({user_id: some_value, id: some_other_value});

关于ruby-on-rails-3 - 带有嵌套资源的 Angular JS ngResource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15058472/

相关文章:

performance - 提高 Ruby on Rails 性能 Windows 7

ruby-on-rails - 设计/密码 Controller 中的 EOFError#create

python - 如何使用 json 数据更新现有的 json 文件 python

java - 在 Android 上解析 ~1 MB JSON 非常慢

javascript - 将 Bootstrap datetimepicker 绑定(bind)到模型 Angular 时出错

ruby - 在 Rails 3 中学习 ActiveResource 的资源 - 以务实的方式

json - 如何在使用 Cloud Scheduler 发出的 HTTP POST 请求中添加 JSON 正文?它会添加 "Content-Type": "application/json" header?

javascript - Angularjs + Bootstrap : Google Page Insight test

AngularJS 观察者未绑定(bind)/观察

ruby-on-rails-3 - 如何在 VCR 中匹配动态变化的 URL