更好的ruby终端着色库

有很多着色库:彩色,term-ansicolor。 但有没有可以做到这一点: puts “#{‘hello’.red} world!”.bold 和world! 应该是大胆的。 为了说清楚,我想得到这个: “\e[1m\e[31mhello\e[0m\e[1m world!\e[0m” 甚至更好(更短): “\e[1;31mhello\e[0;1m world!\e[0m” 而不是这个: “\e[1m\e[31mhello\e[0m world!\e[0m”

头部使用未知选项-1 / -n错误。 可能与ruby有关

在OSX 10.9.1中启动终端时,我遇到了一个反复出现的问题。 每次我启动终端时,我都会重复以下至少30次 Unknown option: 1 Usage: head [-options] … -m use method for the request (default is ‘HEAD’) -f make request even if head believes method is illegal -b Use the specified URL as base -t Set timeout value -i Set the If-Modified-Since header on the request -c use this content-type for POST, PUT, […]

ruby案例陈述与比较

有没有办法在ruby中使用带有整数比较的case语句? 我找到了很多比较字符串的例子,但是下面我的case示例因语法错误而失败。 def get_price_rank(price) case price when = 90 return ‘Rich!’ end end

在rails模型中编写大型SQL的更好方法是什么?

在使用Rails为糖代码提供的很多Arel之后,我在处理大型复杂的SQL查询时遇到了问题,而我无法用Arel方法做得很好。 我喜欢Arel的小东西,但是当它变得混乱时,我更喜欢分开代码。 那么,有什么建议我应该如何处理模型中的大型SQL ? 就像,我什么时候应该为此创建SQL视图 (因为我看到Rails不能很好地提供,我必须为此创建一个迁移)或在某个文件夹“sqls”中创建任何单独的类,然后从那里调用。 我知道有些人使用<< – SQL表达式 这是我目前的例子: Question.from(self.questions .select(“questions.id”) .select(“(NOT (questions.last_active_user_id = #{user.id} OR (COALESCE(ss.updated_at > questions.last_active_at, false) OR COALESCE(ds.updated_at > questions.last_active_at, false))))::integer as active”) .select(“(((NOT((COALESCE(ss.updated_at > questions.created_at, false) OR COALESCE(ds.updated_at > questions.created_at, false))) AND pages.owner_id = questions.user_id) OR (NOT (COALESCE(ss.updated_at > questions.owner_found_important_at, false) OR COALESCE(ds.updated_at > questions.owner_found_important_at, false)) AND owner_found_important_at is […]

在指定目录中创建文件

如何在特定目录中创建新文件。 我创建了这个类: class FileManager def initialize() end def createFile(name,extension) return File.new(name <<"."<<extension, "w+") end end 我想指定一个目录(路径)创建文件的位置。 如果这个不存在,他将被创建。 因此,我必须在文件创建后立即使用fileutils ,或者我可以在创建中直接指定创建文件的位置吗? 谢谢

使用多个产量来插入内容

我正在尝试使用yield在我的页面上插入内容,但每次操作都会从页面中删除整个内容。 我有一个主要yield ,工作正常: 但是在一个页面上显示的新内容中,我有另一个yield : 当用户单击呈现的菜单时,应在该菜单下方显示新内容。 管理员/ _menu.html.erb “admins”, :action => “test” %> 控制器: class AdminsController < ApplicationController def index end def test @users = User.paginate(page: params[:page]) end end test.html.erb All users … 当我从菜单中单击“用户”选项时,页面刷新,菜单消失,“body”内没有显示任何内容。 我希望内容显示在菜单下方。 如何使用第二次产量并完成此function? 我希望这个问题不会令人困惑。 如果问题令人困惑,请在评论中写下我,我会立即编辑。 谢谢 :)

测试应用程序时,“在测试环境中激活Web控制台”

我是Rails的新手。 因此,如果这是一个愚蠢的问题,请提前道歉。 我已经阅读了Michael Heartl的书,并尝试自己编写应用程序。 我已经编写了一些基本的测试,但是在尝试使用时测试应用程序 $ bundle exec rake test 我在终端上收到以下消息 Web Console is activated in the test environment, which is usually a mistake. To ensure it’s only activated in development mode, move it to the development group of your Gemfile: gem ‘web-console’, group: :development If you still want to run it the test environment […]

在Ruby中声明“私有”/“受保护”时实际发生了什么?

在Ruby类定义中声明private / protected时实际发生了什么? 它们不是关键字 ,因此这意味着它们必须是方法调用,但我无法找到它们的定义位置。 它们似乎没有记录。 声明private / protected方法(如下所示)的两种不同方式是否以不同方式实现? (第二种方式显然是一种方法调用,但这在第一种方式中并不那么明显。) class Foo private def i_am_private; end def so_am_i; end end class Foo def i_am_private; end def so_am_i; end private :i_am_private, :so_am_i end

Ruby gem环境问题 – LoadError:没有这样的文件加载 – 机器人

我正在尝试使用海葵gem编写爬行器,这需要机器人gem。 无论出于何种原因,机器人绝对不会包括。 这是我的一些环境信息: $ gem list -d robots *** LOCAL GEMS *** robots (0.10.1) Author: Kyle Maxwell Homepage: http://github.com/fizx/robots Installed at: /usr/local/lib/ruby/gems/1.9.1 Simple robots.txt parser $ gem env RubyGems Environment: – RUBYGEMS VERSION: 1.8.10 – RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [x86_64-darwin10.7.0] – INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1 – RUBY EXECUTABLE: /usr/local/bin/ruby – EXECUTABLE DIRECTORY: /usr/local/bin – […]

需要帮助获取嵌套的ruby哈希层次结构

我有哈希深度嵌套哈希,我希望每个键的层次结构(父对子)作为数组。 例如 – hash = { “properties”=>{ “one”=>”extra”, “headers”=>{ “type”=>”object”, “type1″=>”object2” }, “entity”=>{ “type”=>”entype” }, }, “sec_prop”=>”hmmm” } 对于这个哈希,我希望输出如下所示,作为每个键的单独数组。 [properties,one] [properties,headers,type] [properties,headers,type1] [properties,entity,type] [sec_prop] 我一直在尝试并通过一些递归方法搜索这个,但它似乎不适合我任何帮助将不胜感激。 这里需要注意的重要一点是,在嵌套中存在相同哈希中的重复键,例如在头和实体中重复键入键。 所以我需要适当的层次结构来识别正确的密钥 我应该只为那些值不是另一个哈希的键得到这个层次结构数组。 它应该采用上面给出的格式,但也欢迎任何其他解决方案 谢谢。!