【发布时间】:2013-08-07 02:03:30
【问题描述】:
我正在尝试将 Ruby 嵌入到 JS.erb 文件中,我希望能够在其中访问 @user 对象及其所有关系。
- 我不想转换为 JSON 对象。我希望ERB 在服务器端预编译。
- 我不想在视图中迭代,而是在 JS 文件中迭代。应该怎样 我正在构建我的控制器/视图/js.erb文件来做这个 工作?
控制器 - 用户控制器
class UsersController < ApplicationController
def index
end
end
模型 - user.rb
class User < ActiveRecord::Base
attr_accessible :email, :first_name, :last_name
has_many :qualification_rs
end
查看 - Users.html.erb 为空白(我想纯粹从 JS 获取我的代码)
<html>
<body>
</body>
</html>
Javascript 资产 - users.js.erb
$(document).ready(function(){
<% @users.each do |user| %>
$('body').append(<% = user.first_name%>);
<%end%>
});
出现如下错误
"nil:NilClass 的未定义方法 `each'" 即它无法识别 js 文件中的 @users。 (它在我从中包含 javascript 标记的 user.html.erb 文件中执行。我还要做什么才能在 js 文件中识别实例对象?
【问题讨论】:
标签: javascript jquery ruby-on-rails erb