以下
-
和=
的使用有什么区别:
- content_for :header do
%h1 Title
和
= content_for :header do
%h1 Title
正确的方法是什么?
这取决于你想做什么。
要立即呈现标头,请执行以下操作:
= content_for :header do
%h1 Title
要存储内容并在以后使用,请执行以下操作:
- content_for :header do
%h1 Title
并在您视图中的某个地方使用它:
= content_for :header
在 Rails <3.2 中,您需要使用 = yield :header
。这在 Rails 3.2 中仍然受支持,但它在辅助模块中不起作用,而content_for
则支持(谢谢@drewish)。
= yield :header
虽然没有被弃用,但已被较少使用。尽管 Rails 3.2 支持此功能,但问题出现在帮助程序模块中。
另一方面,content_for
确实运行良好,并且是更常用的命令。