草庐IT

rb_protect

全部标签

ruby - 来自 Bundler 的 Fresh Ruby gem - 无法加载我的 version.rb 文件?

我想制作一个全新的Ruby应用程序,所以我决定使用bundlegemfoo来完成它。这给了我全部:lib/foo/version.rbfoo.rbGemfileRakefilefoo.gemspecREADME.md结构。现在,当我运行rubyfoo.rb时,我得到:`require':cannotloadsuchfile--foo/version(LoadError)foo.rb只是默认值:require'foo/version'moduleFooendgems不能自己跑吗?我希望我不必为了测试而将我的gem包含到示例应用程序中吗? 最佳答案

c - (U) Ruby 扩展 : rb_gc_mark() and instance variables

我正在编写定义类的ruby​​扩展。如果我使用Data_Wrap_Struct()来实现我对rb_define_alloc_func()的回调,我是否需要手动标记和释放实例变量?还是仍然为我处理? 最佳答案 Ruby的GC将收集在您的Ruby对象的实例变量中引用的所有Ruby对象。您不必也不应该自己释放Ruby实例变量(即在您的扩展中使用rb_iv_set()/rb_iv_get()访问的任何对象)。但是,如果包装的Cstruct引用Ruby对象,那么您必须在传递给Data_Wrap_Struct()的mark回调中标记这些对象。(

ruby-on-rails - Unicorn.rb 配置取决于环境

我在config/unicorn.rb中有一行看起来像这样:working_directory"/SomePath/Web\Development/Rails/learning"但是在生产环境中,需要不同的路径。我想尽可能多地保留源代码控制(还没有放弃任何东西)。有没有办法根据环境设置working_directory? 最佳答案 您尝试如何访问RAILS_ENV或RACK_ENV?它应该通过“ENV”就像...ENV['RAILS_ENV']……或者……ENV['RACK_ENV']当您将“-E”标志传递给unicorn时,一个或

ruby-on-rails - Errno::ENOENT - 没有这样的文件或目录@rb_sysopen

我正在尝试使用ruby​​onrails中的actionmailer发送电子邮件附件,但我一直收到此错误。问题似乎是它无法在我指定的目录中找到文件,但文件路径是有效的。我还在控制台中使用File.exist?检查了这一点,并确认提供的路径计算结果为真。这是我的邮件:classOrderMailer我还按照ActionMailer文档的建议安装了邮件gem来处理编码。任何帮助将不胜感激,-布莱恩 最佳答案 Rails.root返回一个Pathname对象。Pathname#+(string)将File.joinstring到路径ifi

ruby - 如何修复此错误 : kernel_require. rb :45:in `require' : cannot load such file?

我有以下文件结构:执行.rb图书馆我的类(class).rb在execute.rb我有下面的代码:#!/usr/bin/rubyrequire'lib/my_class'my_object=MyClass.newmy_object.some_method这是my_class.rb的代码:classMyClassdefsome_methodputs'OK'endend所以,我尝试运行execute.rb:rubyexecute.rb但是我收到这个错误:/home/vagrant/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/ru

ruby -/lib 中的 <appname>.rb 文件在 Ruby 项目中通常用于什么?

引用这个问题:Idealrubyprojectstructure我注意到appname.rb在lib中,并且是顶级。我在Github上阅读了一些Rake源代码,我注意到他们的项目结构几乎相同。他们在/lib中有一个顶级“rake.rb”文件,但我不确定它的用途。在ThePickaxe(ProgrammingRuby1.9)中,他们展示了一个构建小型项目的示例,其目录结构与上面几乎相同,但没有提及/lib中顶级.rb的用法。所以,我的问题是:这个东西在Ruby项目中通常用于什么?抱歉,如果这是一个愚蠢的问题,我敢肯定,但我对Ruby还比较陌生。我现在不太了解Ruby-foo。;)谢谢。

ruby-on-rails - Capistrano:deploy.rb 文件重构

我的deploy.rb中有以下代码namespace:appdodesc"copiestheconfigurationfrilefrom~/shared/config/*.ymlto~/config"task:copy_config_files,:roles=>:appdorun"cp-fv#{deploy_to}/shared/config/hoptoad.rb#{release_path}/config/initializers"run"cp-fv#{deploy_to}/shared/config/app_config.yml#{release_path}/config/app_

ruby - 在 Ruby 中声明 "private"/"protected"时实际发生了什么?

在Ruby类定义中声明private/protected时实际发生了什么?他们不是keywords,这意味着它们必须是方法调用,但我找不到它们的定义位置。它们似乎没有记录在案。声明private/protected方法(如下所示)的两种不同实现方式是否不同?(第二种方式显然是方法调用,但在第一种方式中并不那么明显。)classFooprivatedefi_am_private;enddefso_am_i;endendclassFoodefi_am_private;enddefso_am_i;endprivate:i_am_private,:so_am_iend

ruby - 使用 Octokit.rb 输出 repos URL

我正在尝试使用Octokit.rb列出Github帐户存储库的详细信息,但似乎无法找到关联的URL。首先,我需要做的就是使用OAuth通过GithubAPI进行身份验证,并将详细信息输出到控制台。到目前为止,这是一个基本示例:client=Octokit::Client.new:access_token=>'my_token'client.repos.eachdo|repo|putsrepo.nameputsrepo.description#html_url&clone_urlgohere.end我确定我忽略了一些明显的东西,但是您需要做什么才能找到html_url、clone_url

ruby-on-rails - 我可以在没有 Controller 的情况下直接从 routes.rb 渲染布局吗?

我想为网站的管理和公共(public)部分设置一对样式指南。每个都需要自己的布局,其中包含静态html和调用erbpartials的混合(因此静态页面不会削减它)。我不需要Controller来为这些页面提供服务,而且我不希望有效的仅开发内容使其余代码困惑。这让我想知道是否有一种方法可以直接呈现布局。免责声明:我明白这不是我应该经常/永远做的事情,而且我知道有很多争论可以解释为什么这是一个坏主意。我对这是否可能感兴趣。有没有办法让我直接从routes.rb渲染布局而不通过Controller? 最佳答案 出于某种奇怪的原因,我想暂时