Tag: ruby

Ruby中的@@variables是什么意思?

在符号( @@ )前面加上双引号的Rubyvariables是什么? 我对一个带有at符号的variables的理解是,它是一个实例variables,就像这样在PHP中: PHP版本 class Person { public $name; public function setName($name) { $this->name = $name; } public function getName() { return $this->name; } } ruby相当 class Person def set_name(name) @name = name end def get_name() @name end end @@是什么意思,这与标志中的单个标志有什么不同?

Ruby 1.8和Ruby 1.9有什么区别?

我不清楚“当前”版本的Ruby(1.8)和“新”版本(1.9)之间的差异。 对于这些差异有什么“简单的”或“简单的”解释,以及它们为何如此不同?

Rails会议目前的做法

任何人有任何Rails和会议的“最佳做法”提示? Rails 3的默认会话types仍然是CookieStore,对不对? 我用了一段时间的SqlSessionStore,它运行良好,但我可能会离开,赞成CookieStore。 使用CookieStore进行敏感信息,即使是腌制信息,还是更好地存储在数据库中,是不是一个好主意?

实例variables:self vs @

这里是一些代码: class Person def initialize(age) @age = age end def age @age end def age_difference_with(other_person) (self.age – other_person.age).abs end protected :age end 我想知道的是在age_difference_with方法中使用@age和self.age之间的区别。

在Rails中,如何使用视图呈现JSON?

假设你在你的用户控制器中,你想得到一个JSON响应的显示请求,这将是很好,如果你可以在你的views / users /目录中创build一个文件,命名为show.json和你的用户#显示动作完成后,呈现文件。 目前你需要做一些事情: def show @user = User.find( params[:id] ) respond_to do |format| format.html format.json{ render :json => @user.to_json } end end 但是如果你可以创build一个show.json文件,它会自动呈现像这样: def show @user = User.find( params[:id] ) respond_to do |format| format.html format.json end end 这会为我节省很多的痛苦,并且会冲走当我在控制器中渲染我的json时得到的可怕的肮脏的感觉

无法安装RMagick 2.13.1。 找不到MagickWand.h。

当我尝试安装rmagick我得到以下错误信息: Can't install RMagick 2.13.1. Can't find MagickWand.h. *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. 我在Mac OSX 10.6.8,ruby1.9.2p290,rvm 1.10.2。 任何人都可以帮助我解决这个问题。

检查variables是否被定义?

我如何检查一个variables是否在Ruby中定义? 是否有isset type方法?

我如何在我的Gemfile中指定一个本地gem?

我想Bundler加载一个本地的gem。 有没有这个选项? 或者我必须将gem文件夹移动到.bundle目录中?

Ruby:kind_of? 与instance_of? 与is_a?

有什么不同? 我应该什么时候使用哪个? 为什么有这么多呢?

在控制台中禁用Rails SQL日志logging

有没有办法禁用SQL查询日志logging时,我在控制台中执行命令? 理想情况下,如果我可以禁用它并通过控制台中的命令重新启用,那将是非常好的。 我试图debugging一些东西,用“puts”打印出一些相关的数据。 但是,sql查询输出使其难以阅读。 编辑:我发现另一个解决scheme,因为设置logging器为零有时会引发错误,如果我的代码以外的东西试图调用logger.warn 而不是设置logging器nil您可以将logging器的级别设置为1 。 ActiveRecord::Base.logger.level = 1 # or Logger::INFO