小编eug*_*gen的帖子

删除String中的多个空格和新行

假设我们有这样的字符串:

Hello, my\n       name is Michael.
Run Code Online (Sandbox Code Playgroud)

如何删除该新行并将其后的那些空格删除到字符串内部以获取此内容?

Hello, my name is Michael.
Run Code Online (Sandbox Code Playgroud)

ruby string

94
推荐指数
6
解决办法
6万
查看次数

如何使用正则表达式和反向引用编写Ruby switch语句(case ... when)?

我知道我可以编写一个Ruby case语句来检查正则表达式的匹配.但是,我想在return语句中使用匹配数据.像这样的半伪代码:

foo = "10/10/2011"

case foo
    when /^([0-9][0-9])/
        print "the month is #{match[1]}"
    else
        print "something else"
end
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

谢谢!


请注意:我理解我不会像上面那样对一个简单的情况使用switch语句,但这只是一个例子.实际上,我想要实现的是将许多潜在的正则表达式匹配为可以用各种方式编写的日期,然后相应地使用Ruby的Date类进行解析.

ruby regex switch-statement

80
推荐指数
2
解决办法
4万
查看次数

更改URL而不更改资源名称

我正在为一个兔子农民建立一个网站(让我们假装).这个男人密切关注他的兔子,并希望他们都归类.所以我为他建了一个RabbitCategoriesController,并将这一行添加到我的routes.rb中

resources :rabbit_categories
Run Code Online (Sandbox Code Playgroud)

的URL被作为表示向上rabbit_categories,rabbit_categoriew/new

如果我希望网址看起来像rabits/categories rabits/categories/new怎么办?这不是嵌套资源,我只是想改变URL的外观.

当然,如果资源被称为"类别",我可以做到

namespace :rabbits do
  resources :categories
end
Run Code Online (Sandbox Code Playgroud)

有什么办法我可以写,但告诉它使用RabbitCategoriesController而不是Rabbits :: CategoriesController?

routing nested-resources ruby-on-rails-3

38
推荐指数
1
解决办法
2万
查看次数

如果key不存在,则创建默认值

任何人都可以向我展示一种检查哈希中是否存在密钥的红宝石方法,如果没有,则为其提供默认值.我假设有一个衬垫使用,除非这样做,但我不知道该使用什么.

ruby hash

34
推荐指数
5
解决办法
3万
查看次数

Rails if语句语法

我写了下面的ERB,并在问号上出现语法错误.来自devise的这个辅助函数当前评估为false.我错过了什么?

<%= if user_signed_in? %>
<%= render 'form' %>
<%= end %>
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails erb

32
推荐指数
2
解决办法
7万
查看次数

tmux:open terminal failed:缺少或不适合终端:xterm-256color

我用home-brew在mac上设置tmux.当试图运行tmux时,我继续收到此错误

open terminal failed:缺少或不适合终端:xterm-256color

有什么建议?

terminal tmux

25
推荐指数
6
解决办法
2万
查看次数

在Ruby中删除"@"符号及其后的所有内容

我正在开发一个应用程序,我需要在用户的电子邮件地址之前传递"@"符号作为他/她的名字和姓氏.例如,如果用户的电子邮件地址为"user@example.com",则用户提交表单时,我会从电子邮件中删除"@ example.com",并将"user"指定为姓名.

我已经做过研究,但是无法在Ruby中找到这样做的方法.有什么建议 ??

ruby regex email-validation

23
推荐指数
4
解决办法
2万
查看次数

找出Ruby/Rails中定义方法的位置(而不是Java)

我刚刚开始使用Ruby on Rails.来自Java世界,我想知道的一件事是Ruby/Rails开发人员如何找出实际定义方法的位置.

我习惯于单击Eclipse中的方法来查找即使在第三方库中定义的位置(假设我有源代码).

一个具体的例子:我试图找出Authlogic gem如何显然改变我的User类的构造函数以要求一个额外的参数(称为:password_confirmation),即使User类甚至没有继承任何与Authlogic相关的东西.

可能我只是忽略了一些非常明显的东西(或者我仍然无法围绕整个"约定配置"的东西;-))

ruby ruby-on-rails

23
推荐指数
3
解决办法
6431
查看次数

![远程拒绝]主 - >主(预接收挂钩拒绝)

Tasks: TOP => assets:precompile
       (See full trace by running task with --trace)
 !
 !     Precompiling assets failed.
 !

 !     Push rejected, failed to compile Ruby app

To git@heroku.com:tranquil-crag-9767.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:tranquil-crag-9767.git'
Run Code Online (Sandbox Code Playgroud)

任何想法为什么会这样?我已经检查过所有内容都已正确设置,并且与git的连接很好.

ruby ruby-on-rails heroku

22
推荐指数
1
解决办法
4万
查看次数

Ruby中的斜杠和反斜杠

我想编写一个适用于Windows和Linux的应用程序.但我有一个路径问题,因为Windows使用"\"而Linux使用"/".我可以解决这个问题.谢谢

ruby path

16
推荐指数
4
解决办法
1万
查看次数