我正在设置一个基本的 Rails 应用程序并将 AngularJS 集成到其中。身份验证由 devise、cancan 处理, Angular 色由 rolify 管理。我正在尝试构建一个用户索引页面并在页面上显示每个用户的 Angular 色,但似乎无法使其正常工作。 jbuilder 返回每个用户的信息,但 Angular 色不在那里。
index.json.jbuilder
json.array!(@users) do |user|
json.id user.id
json.name user.name
json.email user.user.email
json.street user.street
json.city user.city
json.state user.state
json.zip user.zip
json.home_phone user.home_phone
json.cell_phone user.cell_phone
json.alt_email user.alt_email
json.start_year user.start_year
json.notes user.notes
json.confirmed user.confirmed
json.nickname user.nickname
end
我的用户模型、 Controller 或索引页没有什么特别的(我试图在索引页上显示用户索引条目中的 Angular 色)
有什么帮助吗?
提前致谢:
最大
最佳答案
我不熟悉 jbuilder(我使用 Active Model Serializers 在我的 Angular-Rails 应用程序中渲染 json),但您看不到 Angular 色的原因是 Rolify 向用户添加 Angular 色而不是作为 User
上的属性对象,而是通过 has_and_belongs_to_many
模型和 Role
模型之间的 User
关联。因此,如果您想返回用户的 Angular 色,则需要创建一个以 json 形式呈现 /users/:user_id/roles
的 Rails Controller 操作。
然后我可能会创建一个 Role
工厂来初始化 Angular 代码中的 $resource
对象并将其与该路由匹配,以便您可以访问具有给定 ID 的用户的 Angular 色。
关于javascript - 显示用户角色 : angularjs, rolify,rails 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18177963/