我试图从控制器获取运行rails应用程序的机器的主机名.

考虑到它应该在windows和linux上都能工作,最好的方法是什么?

推荐答案

总是有:

require 'socket'
...
Socket.gethostname

我手头没有Windows box来测试这个,但文档中没有提到它是*nix特定的.

注意:Rails 4不需要require语句,其他Rails版本也可能不需要require语句.如果你在做没有Rails的普通Ruby,这是必需的.

Ruby-on-rails相关问答推荐

使用turbo流的部分渲染在rails 7中不起作用.

使用ActiveSupport::TimeWithZone将UTC转换为用户定义的时区

Rails 6:强类型原始 SQL 查询返回数组类型

微软安全链接在页面加载前解锁用户

Rails - 如何从模型中查询 has_many

2个空格或1个制表符,Rails社区的缩进标准是什么?

在 Rails 中找不到关联问题

回形针图片网址

在 Rails 中,如何处理多个选中的复选框,只需拆分 , 或?

如何获取包含表的列名的数组

在 Rails 中创建随机 DateTime 的最佳方法

Ruby on Rails 基本概念总结

默认呈现 JSON 而不是 HTML?

在 rails 3 中批量插入

如何更改 Rails 3 控制器中视图文件的默认路径?

您将如何解析 Ruby 中的 url 以获取主域?

您如何查看 ruby​​ 中的调用堆栈示例?

Rails:为什么 with_exclusive_scope 受保护?关于如何使用它的任何好的做法?

简单的 rails rake 任务拒绝运行并出现错误不知道如何构建任务,为什么?

我如何为 Rails3/Bundler 供应 gems