小编jun*_*nky的帖子

ruby错误 - 我可以使用{...}将此块转换为单行吗?

我创建了以下内容(这是更多代码的一部分,但只有这一行有问题):

if number_to_test % divisor == 0 then number_of_divisors+= 1 end
Run Code Online (Sandbox Code Playgroud)

我想缩短它

if number_to_test % divisor == 0 { number_of_divisors+= 1 }
Run Code Online (Sandbox Code Playgroud)

但我明白了

syntax error, unexpected '{', expecting keyword_then or ';' or '\n'
    if number_to_test % divisor == 0 { number_of_divisors+= 1 }
                                      ^
 syntax error, unexpected '}', expecting keyword_end
Run Code Online (Sandbox Code Playgroud)

我以为我可以将长格式改为{}
你能告诉我正确的语法(如果可能的话)吗?
也许我只是想做结束块而不是if语句?

ruby

1
推荐指数
1
解决办法
83
查看次数

#<WelcomeController:0x00000006ab2df8> 的未定义方法“布局”

我希望我的欢迎控制器使用不同的布局:

class WelcomeController < ApplicationController

  def index
    if signed_in?
      layout 'default'
    else
      layout 'welcome'
    end
    render 'welcome/index'
  end

end
Run Code Online (Sandbox Code Playgroud)

ruby layout controller ruby-on-rails ruby-on-rails-3

1
推荐指数
1
解决办法
909
查看次数

rails-devise - 无法注销

我无法测试我的登录信息......'我无法注销(还没有注销按钮).我能够测试一次,但现在我被"卡住"登录了!

为什么我不能使用
http://localhost:3000/account/sign_out

我收到一个错误 No route matches [GET] "/account/sign_out"

但是rake routes给了我:

         ...
         new_standard_user_session GET    /account/sign_in(.:format)                                      devise/sessions#new
             standard_user_session POST   /account/sign_in(.:format)                                      devise/sessions#create
     destroy_standard_user_session DELETE /account/sign_out(.:format)                                     devise/sessions#destroy    new_standard_user_registration GET    /account/sign_up(.:format)                                      devise/registrations#new
             ...
Run Code Online (Sandbox Code Playgroud)

/account/sign_in和你的/account_sign_up网址都可以

routes ruby-on-rails devise

1
推荐指数
1
解决办法
2287
查看次数

为什么这个Ruby方法需要是类级方法?

这是Ruby中的经典fizzbuzz:

class PrimeChecker
  def print_em
    1.upto 100 do |fizzbuzz|
      if (fizzbuzz % 2) == 0 && (fizzbuzz % 5) == 0
        puts "fizzbuzz: " + fizzbuzz.to_s
      elsif (fizzbuzz % 5) == 0
        puts "fizz: "+fizzbuzz.to_s
      elsif (fizzbuzz % 2) == 0
        puts 'buzz: ' + fizzbuzz.to_s
      else
        puts "-" + fizzbuzz.to_s
      end
    end
  end
end
PrimeChecker.print_em
Run Code Online (Sandbox Code Playgroud)

当我执行此操作时,我收到此错误:

未定义的方法'print_em'.

我改变方法self.print_em,它的工作原理.这是否意味着它是一种类方法(我想是这样)?该方法之前是"未找到"因为我只能在类的实际实例上调用这样的方法吗?如果我希望它是一个实例方法,那么它的语法是什么?我正在努力更好地理解Ruby,类和方法.

ruby class

0
推荐指数
1
解决办法
150
查看次数

jquery - 如何在ID选择器中看到通配符

为了隐藏页面周围的一堆不同的内容,我做...

$('#objective_details, #time_estimate_details, #team_members_details, #resources_details').hide();
Run Code Online (Sandbox Code Playgroud)

有没有办法做某种通配符,如

$('#*_details').hide();
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

0
推荐指数
1
解决办法
116
查看次数

ruby - 如何使用Array#select或其他方法缩短此枚举语句?

我有以下7行代码,如何让它们更短,更少罗嗦?

max_group_size = 0
wrong_services.each do |service|
  group_size = service.iep_service.group_size
  if group_size > max_group_size then
    max_group_size = group_size
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby select enumeration map collect

0
推荐指数
1
解决办法
105
查看次数

更简单地说"anwer ="这个"或回答="那个"

可能重复:
优雅的链接'或'用于Ruby中相同变量的测试

answer="this" or answer = "that" 很罗嗦

我希望能够使用更像的表达式,answer =("this" or that")但我知道我不能使用该表达式作为or完成,然后将(true或false)结果与answer进行比较,这不是我想要的.更像是=〜[a/c],但我需要插值.

ruby expression function

0
推荐指数
1
解决办法
110
查看次数

RubyGems安装 - 获取ruby:没有这样的文件或目录 - setup.rb(LoadError)

我跑

gem install rubygems-update
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

ERROR:  While executing gem ... (Gem::RemoteSourceException)
    HTTP Response 302 fetching http://gems.rubyforge.org/yaml
Run Code Online (Sandbox Code Playgroud)

我的环境是:

~$ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 1.1.0 (1.1.0)
  - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
  ...
Run Code Online (Sandbox Code Playgroud)

当我跑:

$ ruby setup.rb 
Run Code Online (Sandbox Code Playgroud)

我明白了:

ruby: No such file or directory -- setup.rb (LoadError)
Run Code Online (Sandbox Code Playgroud)

请帮忙.

ruby-on-rails

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