我有一个 Rails 应用程序,在检查访问用户个人资料页面的用户是否是当前用户(使用 ruby 代码)后,根据条件逻辑的结果调用 JavaScript 方法,如下所示。
有没有办法将用户名(在 <%= @user.name %> 的 ruby 代码中可用)传递给脚本标签,这样我也可以将它传递给被调用的 javascript 函数(除了我传递的另一个参数)。
/views/users/show.html.erb
<% if current_user?(@user) %> #@user represents the user who's profile page is being visited
<script type='text/javascript'>
$(document).ready(function() { #I want to get <%= @user.name %> inside here
var currentuser = true;
app.views.user_view.compTemplates(currentuser)});
</script>
<% else %>
...code ommitted...
<% end %>
更新:
按照这个问题的第一个答案的建议,我在脚本标签中做了这个。
var currentusername = <%= @user.name %>;
但是,一旦 <%= @user.name %> 评估(在本例中为“Veronica”),Veronica 将首次出现在 js 代码中,现在正在注册错误“Veronica 未定义”