Ruby on rails 为什么我会收到一封“信”;未选中的tLABEL,应为';)';错误消息
在第4行中,我收到错误消息Ruby on rails 为什么我会收到一封“信”;未选中的tLABEL,应为';)';错误消息,ruby-on-rails,Ruby On Rails,在第4行中,我收到错误消息“意外的tLABEL,期望'” 模块占位符 扩展ActiveSupport::关注点 def self.image_generator(height: , width:) "http://via.placeholder.com/#{height}x#{width}" end 结束您还有两个“:”不知道为什么 module Placeholder extend ActiveSupport::Concern def self.image_generator
“意外的tLABEL,期望'”
模块占位符
扩展ActiveSupport::关注点
def self.image_generator(height: , width:)
"http://via.placeholder.com/#{height}x#{width}"
end
结束您还有两个“:
”不知道为什么
module Placeholder
extend ActiveSupport::Concern
def self.image_generator(height , width)
"http://via.placeholder.com/#{height}x#{width}"
end
end
除非您要传递关键字参数,否则如下所示:
module Placeholder
extend ActiveSupport::Concern
def self.image_generator(**args)
"http://via.placeholder.com/#{args[:height]}x#{args[:width]}"
end
end
除非要使用关键字参数,否则不需要冒号:
class Foo
def image_generator(height: '60', width: '60')
"http://via.placeholder.com/#{height}x#{width}"
end
end
foo = Foo.new
p foo.image_generator # arguments aren't passed, it uses the "default" values
p foo.image_generator(height: 640, width: 480) # arguments are passed, it uses them
class Foo
def image_generator(height, width)
"http://via.placeholder.com/#{height}x#{width}"
end
end
foo = Foo.new
p foo.image_generator # arguments not passed: it raises "wrong number of arguments"
p foo.image_generator(640, 480) # arguments are passed, it uses them
删除每个参数后的
:
,除非你想使用关键字参数,但你忘记了值。我想知道我是否复制了他的代码,它会抛出NoMethodError
。嗯,很有趣。你刚刚测试了它吗?用纯Ruby,而不是Rails。让我也像往常一样尝试一下伟大的解决方案@SebastianPalma;)