【发布时间】:2015-10-31 10:30:28
【问题描述】:
假设我想创建一个函数来从 Rails 数据库中返回某人的年龄。
function getName(name_input) {
return <%= Names.find_by(name: name_input).age %>
}
当我尝试过类似的函数时,似乎 rails 无法访问局部变量。有解决办法吗?
【问题讨论】:
标签: javascript ruby ruby-on-rails-3
假设我想创建一个函数来从 Rails 数据库中返回某人的年龄。
function getName(name_input) {
return <%= Names.find_by(name: name_input).age %>
}
当我尝试过类似的函数时,似乎 rails 无法访问局部变量。有解决办法吗?
【问题讨论】:
标签: javascript ruby ruby-on-rails-3
getName 是一个在客户端调用的 Javascript 函数。 <%=%> 中的代码在服务器在发送 HTML 视图到客户端之前执行;在那一刻,Rails 不知道name_input 是什么。
【讨论】:
请尝试使用<%= Names.find_by_name(name_input).age %>
【讨论】:
是将 Ruby 嵌入 HTML 中的 erb 标签,您的 Rails 服务器将呈现这些标签并将其作为纯 HTML 发送给客户端。
您不能将服务器端 ruby 与客户端 javascript 混合使用。
【讨论】: