2016-11-26 84 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