2016-11-26 81 views
1

我越来越on Rails的Ruby中我current_user.id并试图通过HTML隐藏输入>我怎样才能把我的current_user.id到AngularJs控制器

<input type="hidden" ng-model="user_id" value="<%= current_user.id%>"></input> 

调试将它传递给我的角度控制,我作用域未定义为“$ scope.user_id”,我需要这个值将它发送到我的服务器。

我做错了什么?有没有更好的办法?

回答

1

尝试

<input type="hidden" 
     ng-model="user_id" 
     ng-init="user_id = <%= current_user.id%>"></input> 
+0

有点我解析像上面的答案,但调用一个函数>> ng-init =“init(<%= current_user.id%>)”。谢谢 –

1

我建议您使用Devise Token Authng-token-auth。这为您提供了与Angular的所有设计特性的完美整合。随着NG-令牌身份验证,你可以做你想要什么,更

0

如果不使用NG-令牌身份验证你可以用红宝石助手创建角度的服务。

# layout/application.html.slim 
    = js_current_user 

    # application_helper.rb 
    def js_current_user 
     <<-EOS.html_safe 
     <script type="text/javascript"> 
      angular.module('myApp').constant('CURRENT_USER', #{current_user.to_json}) 
     </script> 
     EOS 
    end