我想设置一个全局常量(在Rails
中),然后根据我要在JavaScript
文件中添加一个条件(包含在我的应用程序的每个页面中)。我还有一些基于此变量的Rails依赖代码。
这样做的最佳方式是什么?
答案 0 :(得分:2)
在application_controller.rb
中def before_filter
# This variable will be available in all controller actions and views
@my_global = "testing"
end
在application.html.erb
中<script type="text/javascript">
var my_global = "<%= @my_global %>"
</script>
答案 1 :(得分:1)
您可以定义一个全局变量,如:window.profileName = 'Shikher';
。或者如果你需要几个全局变量我建议创建一个范围:
var Globals = {};
Globals.profileName = '<%= @user.profile_name %>';
和其他地方
Globals.userId = '<%= @user.id %>';
如果您将在任何地方使用它,您可以在布局文件中插入全局防御。
答案 2 :(得分:0)
您可以使用此gem http://github.com/ejschmitt/jsvars通过ruby定义javascript变量,然后在js中使用它们