【发布时间】:2016-08-16 00:32:00
【问题描述】:
给定 Rails 4.2,Ruby 2.3.1。
理论上,Rails 应该允许您完全重置视图路径,如 here, in the source code 所示。
但是,当我通过控制器回调通过 #view_paths= 重置 view_paths 时,发生了一些意想不到的事情。
> view_paths.size
=> 2
> new_paths = view_paths.reject { |vp| rejection criteria }
> new_paths.size
=> 1
> view_paths = new_paths
> view_paths.size
=> 2
> _view_paths.size
=> 1
self._view_paths 已成功重置,但#view_paths 并未接受这些更改,尽管simply being a wrapper for self._view_paths。为什么self._view_paths 正确,而#view_paths 不正确?
注意:这很重要,因为 Rails 在搜索视图时使用 #view_paths,而不是 self._view_paths。
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-4 ruby-2.3