Сильные параметры Rails - есть ли какое-либо преимущество в кэшировании результатов .require и .permit? - PullRequest
0 голосов
/ 18 марта 2020

Извините, если этот вопрос немного эзотерический c. Я использую строгие параметры в контроллере Rails:

  def license_params
    params.require(:license).permit(:name, :rank)
  end

Обычно license_params используется только один раз в действии, например, License.where(license_params).

Однако этот контроллер выполняет некоторые хитрые манипуляции с параметрами. В результате я вызываю license_params из нескольких разных методов. Не обращая внимания на то, что это хорошая идея или нет, я решил кешировать ответ от .require.permit:

  def license_params
    @license_params ||= params.require(:license).permit(:name, :rank)
  end

Я понимаю, что любой выигрыш в производительности за пределами пренебрежимо мал, но это очень высокая трафик c конечная точка ,

У кого-нибудь есть мнение, является ли это полезным, нерелевантным или избыточным для того, что ActionController :: Parameters уже делает?

...