现在我是Ruby语言的新手。目前正在学习红宝石。我是PHP的专家编码员。基本上我在CakePHP工作。CakePHP 和 Ruby 目录结构大致相同。但是我在 Ruby 代码中有点困惑。
在 CakePHP 中,当我定义任何变量时bootstrap.php
我正在整个站点上获取此变量。
假设我有一个变量名称$gallery_path = 'files/gallery/';
如果我echo $gallery_path
控制器、模型和视图中。我正在获得我的画廊路径。
但是在 ruby 中,我无法定义任何像 php 这样的变量bootstrap.php
请建议我。
对于更改频率足够高以至于您需要不时编辑它们,但频率不够高以至于您不会不断更改的内容,一个简单的module
在这里效果很好。
你可以从这样的东西开始:
module SiteConfiguration
mattr_accessor :site_name
mattr_accessor :payment_provider
end
然后,您可以在config/environment.rb
中对其进行配置:
SiteConfiguration.site_name = 'The Site'
SiteConfiguration.payment_provider = 'PayPal'
这些可以在您的应用中的任何位置访问。
您可以使用
环境变量,请尝试以下 gem:https://github.com/bkeepers/dotenv
或者您可以定义它们:
ENV["host"] = "localhost:3000"
你的application_controller.rb
应该写在下面
$gallery_path = 'files/gallery/';
您的视图文件
<%=$gallery_path %>
我想你的意思是全局变量。在Ruby-on-Rails中,你可以这样写
控制器:
@value = 2+1
.HTML:
<%= @value %>
因此,您在浏览器中的输出将为"3"