Ruby on rails 在Angular和Rails中访问数据对象
我刚刚开始学习Angular,看过Ryan Bates的作品,也读过BerylliumWork的作品,但我仍在努力弄清楚如何从Rails服务器访问数据 我这里有一个非常简单的用例。我想访问视图中用户的名字 以下是查看代码:Ruby on rails 在Angular和Rails中访问数据对象,ruby-on-rails,ruby-on-rails-3,angularjs,Ruby On Rails,Ruby On Rails 3,Angularjs,我刚刚开始学习Angular,看过Ryan Bates的作品,也读过BerylliumWork的作品,但我仍在努力弄清楚如何从Rails服务器访问数据 我这里有一个非常简单的用例。我想访问视图中用户的名字 以下是查看代码: <div ng-controller="UserCtrl"> {{user.first_name}} </div> 这是我的控制器: def show respond_with User.find(params[:id]) end 如您
<div ng-controller="UserCtrl">
{{user.first_name}}
</div>
这是我的控制器:
def show
respond_with User.find(params[:id])
end
如您所见,我在$scope.user中有一个硬编码id,它显示在页面上。类似地,如果我使用类似于ng app=“user in users”…{user.first_name}的东西,我会得到完整的用户列表
但是,如何获得一个用户实例?默认情况下,使用实例变量而不是硬编码的“1”:
- $resource.query()用于获取对象列表
- $resource.get({params})用于获取单个对象
$scope.user=user.get({id:1})
:
- $resource.query()用于获取对象列表
- $resource.get({params})用于获取单个对象
在您的例子中,您需要
$scope.user=user.get({id:1})
如何将“1”作为变量?上面的代码已经拉入用户1。但是如果我想要用户n怎么办?user.query()
获取所有用户的列表(假设您没有提供任何过滤器,例如user.query({active:true})
)。此列表是一个对象数组。每个对象都是一个特定的对象,由服务器响应的外观定义。您可以决定如何查看此列表以获取(并可能编辑)每个用户。您还可以使用单独的路由来获取/显示/编辑单个用户。您可以通过$routeProvider中定义的自定义路由(例如,when('/users/:id',{controller:'UserCtrl',templateUrl:'path_to_tpl'})
)来完成。这就是我需要做的-设置$routeProvider。非常感谢,斯图!胜利确实是你的。不过,我该如何使“1”成为一个变量呢?上面的代码已经拉入用户1。但是如果我想要用户n怎么办?user.query()
获取所有用户的列表(假设您没有提供任何过滤器,例如user.query({active:true})
)。此列表是一个对象数组。每个对象都是一个特定的对象,由服务器响应的外观定义。您可以决定如何查看此列表以获取(并可能编辑)每个用户。您还可以使用单独的路由来获取/显示/编辑单个用户。您可以通过$routeProvider中定义的自定义路由(例如,when('/users/:id',{controller:'UserCtrl',templateUrl:'path_to_tpl'})
)来完成。这就是我需要做的-设置$routeProvider。非常感谢,斯图!胜利确实是你的。
def show
respond_with User.find(params[:id])
end