gpt4 book ai didi

Erb 标签内的 Javascript 变量

转载 作者:行者123 更新时间:2023-11-27 23:39:30 25 4
gpt4 key购买 nike

我正在尝试访问 erb 标记内的 js.erb 文件中的 JavaScript 变量。例如

my_variable = window.location.pathname.split("/")[2];

@project = Project.find(my_variable)

有没有办法在“查找”助手中传递“my_variable”。

最佳答案

另一种解决方案是获取 Rails 端的 URI,获取项目并将其解析为 JSON - 在 js.erb 中重新解析它们并将文件内容发送到客户端。

这样您就不必在服务器上执行 JS,并且您仍然可以在所需的 JS 文件中拥有该项目。

This answer解释如何获取不同 Rails 版本的请求 URI。

For Rails 3.2 or Rails 4+

You should use request.original_url to get the current URL.

This method is documented at http://api.rubyonrails.org/classes/ActionDispatch/Request.html#method-i-original_url, but if you're curious, the implementation is:

def original_url
base_url + original_fullpath
end

For Rails 3:

You can write "#{request.protocol}#{request.host_with_port}#{request.fullpath}", since request.url is now deprecated.

编辑(2015 年 11 月 20 日)

由于您似乎需要 url 的特定片段,因此您可以通过简单地调用 original_url.split('/')[2] 轻松地使用 ruby​​ 模拟 JS 实现

关于Erb 标签内的 Javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33823330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com