ruby - 用于分解方法定义的惯用 Ruby

标签 ruby idioms

<分区>

我想把一条线剪成几段

define_method("start_#{event}!") do |user_or_enrollment, setting_name = nil, node_id = nil|

打破这些长方法调用行的传统风格是什么?

最佳答案

惯例是你通常不会像那样打断行,你只是处理它。即使您努力做到这一点,也不是所有的事情都可以用短线整齐地表达出来。

缩短行的一种方法是减少变量名的长度:

define_method("start_#{event}!") do |on, setting = nil, node = nil|

或者使用选项样式定义:

define_method("start_#{event}!") do |on, options = { }|

你在哪里调用它:

start_x!(user, setting: setting_name, node_id: node.id)

关于ruby - 用于分解方法定义的惯用 Ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55029882/

相关文章:

javascript - 在 javascript 中执行 "integer "转换/类型转换的惯用方式是什么?

rust - 计算选项集合中出现次数的惯用方法

list - Haskell:有没有一种惯用的方式将列表中的每个项目插入到它自己的列表中?

python - 如果 a.) 键不存在或 b.) 键未验证,则以最惯用的方式安全地从 dict() 中弹出一个键

ruby-on-rails - Ruby - 创建 postgresql 数据库的最佳方法

ruby - 如何用 ruby​​ 1.9.2 编译 vim

ruby-on-rails - 无法安装 Twilio gem - libxml 问题

ruby - Rails 3.2.8 与 Ruby 1.9.3 兼容吗?

objective-c - 从 [[class alloc] init] 返回 nil 的后续操作

mysql - Ruby on Rails/Ampps/mysql.sock 丢失?