我有以下代码,我想知道它是否可以压缩到一行:
if self.id
return if Party.find_by_id(self.id).name.downcase == self.name.downcase
end
Run Code Online (Sandbox Code Playgroud)
我想知道是否有任何方式将此声明放在一行中.
我知道你可以使用,if statement ? then_statement : else_statement但希望你能在这里看到没有其他的东西.也许break或continue类似的东西?(如果你看到它,可以随意对实际代码进行优化 - 这就是这里的目的)
我想用sed我自己的字符串替换特定行,该字符串必须包含一些嵌套引号,因为它将被另一个程序读取并本身执行命令。
sed -i '63s/^.*$/mystring/' file.txt
其中63是行号,^.*$是选择要替换的整行,mystring是替换字符串,file.txt是要处理的文件。
举例来说,我想mystring exec: echo 'echo "127.0.0.1 localhost" >> /etc/hosts"'知道我该怎么做?我尝试过转义引号。
今天下午 Rubocop 把我拉过来,因为我没有将我的正则表达式文字包装在 %r{} 中。但它随后继续破坏我的 gsub。为什么?
path = '/en/something'
# "/en/something"
locale = 'en'
# "en"
path.gsub(/\A\/#{locale}\/?/, '/')
# "/something" <---- Expected
path.gsub(%r{/\A\/#{locale}\/?/}, '/')
# "/en/something" <---- Unexpected
Run Code Online (Sandbox Code Playgroud) 我想要一个 Rails 应用程序支持的 URL 列表,但我不想提前提供任何参数。
例如,我想列出user_registration_pathas的路径/%{locale}/users/sign_up。
我可以获得一个命名路由列表,如下所示(在 Rails 控制台中测试):
Rails.application.routes.named_routes.helper_names
Run Code Online (Sandbox Code Playgroud)
输出示例:
["rails_info_properties_path", "rails_info_routes_path", "rails_info_path", "rails_mailers_path", "rails_service_blob_path", "rails_blob_path", "rails_blob_representation_path", "rails_representation_path", "rails_disk_service_path"...]
Run Code Online (Sandbox Code Playgroud)
Rails 有什么办法可以实现这一点吗?