В http://api.rubyonrails.org/classes/Hash.html#method-i-slice, я вижуRuby on Rails: более простой метод Hash.slice?
valid_keys = [:mass, :velocity, :time]
search(options.slice(*valid_keys))
Я не получаю использование здесь. Я имею в виду, если я передаю array
в slice
, я определенно хочу, чтобы каждый key
получил нарезок, то зачем использовать addtional *
здесь?
Is можно превратить его в что-то вроде:
valid_keys = [:mass, :velocity, :time]
search(options.simple_slice(valid_keys))
пути создания более простую версии slice
?
Вопрос о том, почему вам нужно спланировать массив для аргумента этого метода? Ссылка: [Хеш] (https://github.com/rails/rails/blob/b670fadb978c8a12c3414ed842cd49e4fde2cec0/activesupport/lib/active_support/core_ext/hash/slice.rb#L21) – vee
@vee, ну, я действительно прочитал исходный код , хотя я не совсем понимаю это. Но основным условием является то, что я думаю, что «срез» должен выполнять грязную работу, я не уверен, правильно ли это мышление. – cqcn1991