我正在编写一个在Rails环境中使用的Ruby脚本,但我select从irb运行它,因为重新加载Rails控制台可能会很痛苦。 现在irb的等待时间要短得多,但是我很困扰我必须重新启动irb,并且每次修改都需要脚本。 有没有更简单的方法从irb重新加载脚本? 我在这个线程中find了一个方法,但是这显然只适用于gem文件。 我的要求声明看起来像这样 require "#{File.expand_path(__FILE__)}/../lib/query" 编辑:已经尝试load而不是require ,我仍然无法得到它的工作。 我无法停止这些错误。 ruby-1.9.2-p0 > load "#{File.expand_path(__FILE__)}/../lib/query.rb" LoadError: no such file to load — /Users/newuser/Dropbox/Sites/rails/hacknyc/(irb)/../lib/query.rb
鉴于以下AR模型,我想在给予任务句柄时按姓氏的字母顺序对用户进行sorting: #user has_many :assignments has_many :tasks, :through => :assignments #assignment belongs_to :task belongs_to :user #task has_many :assignments has_many :users, :through => :assignments 我想得到一个任务,然后导航到其分配的用户, 并按字母顺序sorting用户列表 。 我一直在想,我应该能够将:order子句添加到has_many :users, :through => :assignments像这样: #task.rb has_many :assignments has_many :users, :through => :assignments, :order => 'last_name, first_name' 然而这是行不通的。 在给定任务时,如何按last_namesorting用户?
在安装rvm,更新.gmrc文件,更新rubygems并运行gem install rails -v ">=3.1.0rc" ,我现在好像有一个完整的混乱: $ rails -v /usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [] (Gem::LoadError) from /usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:256:in `to_spec' from /usr/local/lib/site_ruby/1.8/rubygems.rb:1182:in `gem' from /var/lib/gems/1.8/bin/rails:18 myhome@myhome-mini:~$ gem env RubyGems Environment: – RUBYGEMS VERSION: 1.6.2 – RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux] – INSTALLATION DIRECTORY: /home/myhome/gems – RUBY EXECUTABLE: /home/myhome/.rvm/rubies/ruby-1.9.2-p180/bin/ruby – EXECUTABLE […]
可能重复: 为什么rake db:migrate:reset没有在rake -T中列出? 在我的Rails(3.1.3)应用程序中,我可以运行rake db:test:prepare 。 但是当我运行rake -T [db] ,这个任务(和其他很多我可以使用的)不会显示出来。 我如何得到一个完整的任务列表,或者为什么它是不完整的? 例如http://mindspill.net/computing/cross-platform-notes/ruby-on-rails/how-to-list-rake-tasks/显示“db:test:prepare”任务已列入旧版Rails运行rails -T时的版本。
这适用于任何有空格的string str.downcase.tr!(" ", "_") 但没有空格的string会被删除 所以“新学校”会变成“新学校”,但“色彩”会变成“”,什么都不是!
我知道这可能是一个简单的问题,但我仍然试图找出devise出来… 我想在我的login页面上render :layout => false ; 我怎么能用Devise做到这一点?
在Python中,你可以这样做: import webbrowser webbrowser.open_new("http://example.com/") 它将在默认浏览器中打开传入的URL 有没有一个ruby的等价物?
如果我循环遍历给定模型的所有实例并输出每个实例,那么最后,irb仍将打印整个对象。 如果对象最终需要数百行,那么在我看到我真正想要的东西之前还有很长的路要走。 有没有办法在rails控制台中禁用这个function?
我在这里错过了什么? 我正在使用haml_scaffold生成器,并且这些页面与will_paginate正常工作。 当我开始修补时,我最终会遇到这个'total_pages'错误,我不知道我在做什么导致它。 任何人有任何见解? 我正在使用mislav-will_paginate 2.3.11。 mike@jauntyjackalope:~/project$ script/console Loading development environment (Rails 2.3.4) >> @locations = Location.find_all_by_city("springfield") => [#<Location id: 3, address: "123 Main St", city: "springfield", phone: "321-1234", business_id: 2>] >> @locations.class => Array >> @locations.collect{|loc| loc.business} => [#<Business id: 2, name: "A Bar", website: "www.abar.com", business_owner_id: 1, created_at: "2009-08-31 21:13:10", updated_at: "2009-08-31 21:13:10">] […]
另外,我如何将它格式化为一个用零填充的string?