草庐IT

in_string

全部标签

ruby - "Could not find a valid gem in any repository"(rubygame 等)

一段时间以来我一直在尝试安装这个“rubygame”gem,但是每当我使用命令时geminstallrubygame会报错:ERROR:Couldnotfindavalidgem'rubygame'(>=0)inanyrepositoryERROR:Whileexecutinggem...(Gem::RemoteFetcher::FetchError)Errno::ETIMEDOUT:Connectiontimedout-connect(2)(http://rubygems.org/latest_specs.4.8.gz)我也尝试过其他gems但结果相似:ERROR:Couldnotf

Ruby Activerecord IN 子句

我想知道是否有人知道如何在activerecord中执行“IN”子句。不幸的是,“IN”子句几乎无法用谷歌搜索,所以我必须在这里发帖。基本上我想回答这样的问题“给我这些宿舍的所有大学生,宿舍ID在这个数组[id数组]中”。我知道如何编写给定单个宿舍ID的查询,但我不知道如何给定一个ID数组。非常感谢任何帮助。我确定这是某个问题的转贴,所以一旦找到答案/更好的搜索词,我将删除它。 最佳答案 来自§3.3.3SubsetConditionsoftheRailsGuides:IfyouwanttofindrecordsusingtheIN

ruby - Xcode - 配置 : error: no acceptable C compiler found in $PATH

从头开始重建Mac。安装xcode和rvm然后尝试安装ruby但他们都给我:Errorrunning'./configure--prefix=/Users/durrantm/.rvm/rubies/ruby-1.9.3-p125--enable-shared--disable-install-doc--with-libyaml--with-opt-dir=/Users/durrantm/.rvm/usr',pleaseread/Users/durrantm/.rvm/log/ruby-1.9.3-p125/configure.logTherehasbeenanerrorwhilerun

ruby-on-rails - rails : An elegant way to display a message when there are no elements in database

我意识到我正在编写很多与此类似的代码:Youhavenomessages.Ruby和/或Rails中是否有任何构造可以让我跳过它第一个条件?那么当迭代器/循环一次都不会进入时会执行吗?为了示例:Youhavenomessages. 最佳答案 你也可以这样写:Youhavenomessages. 关于ruby-on-rails-rails:Anelegantwaytodisplayamessagewhentherearenoelementsindatabase,我们在StackOverfl

ruby-on-rails - rails : Access to current_user from within a model in Ruby on Rails

我需要在RubyonRails应用程序中实现细粒度访问控制。单个用户的权限保存在数据库表中,我认为最好让相应的资源(即模型的实例)决定是否允许某个用户读取或写入它。每次都在Controller中做出这个决定肯定不会很枯燥。问题是为了做到这一点,模型需要访问当前用户,调用类似may_read?(current_user,attribute_name)的东西。.不过,模型通常无法访问session数据。有很多建议可以在当前线程中保存对当前用户的引用,例如在thisblogpost.这肯定会解决问题。邻近的Google结果建议我在User类中保存对当前用户的引用,我猜这是由应用程序不必同时容

ruby-on-rails - Rails has_many :through Find by Extra Attributes in Join Model

Ruby和Rails的新手,但我现在已经受过书本教育(这显然没有任何意义,哈哈)。我有两个模型,Event和User通过表EventUser连接classUser:event_usersendclassEventUser:event_usersend这个项目是一个日历,我必须在其中跟踪人们为给定的事件注册和刮掉他们的名字。我认为多对多是一种好方法,但我不能这样做:u=User.find:firstactive_events=u.events.find_by_active(true)因为事件实际上没有额外的数据,所以EventUser模型有。虽然我可以做到:u=User.find:fir

ruby-on-rails - 为什么 rake db :migrate:reset not listed in rake -T?

为什么rake-T没有列出一些rake任务?像db:migrate:reset吗?我可以毫无问题地执行它,但为什么它没有列在那里?有没有办法获得真正完整的rake任务列表?%rake-T(in/home/zeus/projects/my_project)rakeabout#ListversionsofallRailsframeworksandtheenvironmentrakedb:create#Createthedatabasefromconfig/database.ymlforthecurrentRails.env(usedb:create:alltocreatealldbsint

ruby-on-rails - 在Ruby on Rails中,要扩展String类,代码应该放在哪里?

如果在RubyonRails上,我需要添加一个名为classStringdefcapitalize_first#...endend想知道文件应该放在哪里?(哪个目录和文件名,是否需要任何初始化代码?)这是针对Rails3.0.6项目的。 最佳答案 我总是在我的lib目录中添加一个core_ext目录。创建一个initializer用于加载自定义扩展(例如:config/initializers/core_exts.rb)。并在其中添加以下行:Dir[File.join(Rails.root,"lib","core_ext","*.r

ruby-on-rails - rails : Validating min and max length of a string but allowing it to be blank

我有一个要验证的字段。我希望该字段能够留空,但如果用户正在输入数据,我希望它采用某种格式。目前我在模型中使用以下验证,但这不允许用户将其留空:validates_length_of:foo,:maximum=>5validates_length_of:foo,:minimum=>5如何编写此代码以实现我的目标? 最佳答案 你也可以使用这种格式:validates:foo,length:{minimum:5,maximum:5},allow_blank:true或者因为您的最小值和最大值相同,以下也将起作用:validates:foo

ruby - "which in ruby": Checking if program exists in $PATH from ruby

我的脚本严重依赖外部程序和脚本。我需要确定我需要调用的程序存在。手动地,我会在命令行中使用“which”来检查这一点。对于$PATH中的东西,是否有等同于File.exists?的东西?(是的,我想我可以解析%x[whichscriptINeedToRun]但这不是super优雅。谢谢!亚尼克更新:这是我保留的解决方案:defcommand?(command)system("which#{command}>/dev/null2>&1")end更新2:出现了一些新的答案-至少其中一些提供了更好的解决方案。更新3:ptoolsgem向File类添加了一个“which”方法。