2016-04-12 14 views
0

私はいくつかの文字列を設定する角度モジュールを持っています。また、テンプレートに文字列の配列を設定したいと思います。Railsテンプレートの値を文字列の配列に設定する

application.html.erb

<script type="text/javascript"> 
    angular.module('userFromServer', []) 
     .service('currentUser', function() { 
     <% if logged_in %> 
      this.name = '<%= @User.name %>'; 
      this.friends = '<%= @User.profile.friends_by_uuid %>'; 
     <% end %> 
     }) 
    </script> 

コントローラ

def friends_by_uuid 
    self.friends.map{|x| "puser_#{x.uuid}"} # also tried adding .to_json 
    end 

出力は、いくつかのエスケープの問題を持っているように見えますが。

"[&quot;puser_589b07ee-b8f1-4214-941d-0ce0b7a6703b&quot;, &quot;puser_ec7d2918-d514-4c42-91fc-641ed2958fcd&quot;]" 

var desired_output = "["puser_589b07ee-b8f1-4214-941d-0ce0b7a6703b", "puser_ec7d2918-d514-4c42-91fc-641ed2958fcd"] 

レール配列に文字列の配列をレンダリングするにはどうすればよいですか?

答えて

0

ビューまたはコントローラにロジックを入力しないでください。Is it bad to have fat views in rails?脂肪モデルが必要です。したがって、ソリューションはモデル内の配列をチャンク/ヘルパー関数を使用してコントローラに供給し、最後にビューで使用します。正確にあなたが何をしたいのか分からないので、これが私ができることの最大のものです。例えば

:文字列を処理するRuby用の

# controller 
def index 
    @ids = MyModel.split(params[:ids]) # suppose params[:ids] are the data coming in 
end 

# view 
<% @ids.each do |id| %> 
# ... 
<% end %> 

、多くの記事が役立つかもしれません。たとえば、hereです。

関連する問題