Ruby on Rails div_for vs <div> </div>

时间:2012-11-07 01:27:02

标签: ruby-on-rails

我是Ruby on Rails的新手。在我的erb文件中,有没有理由使用div_for助手而不是输入<div>标签并将属性设置为HTML?使用div_for有什么好处,是否有建议的最佳做法?

3 个答案:

答案 0 :(得分:9)

我认为人们使用div_for助手的主要原因是因为它可以接受一个ActiveRecord对象数组作为参数。这样它就成了循环迭代器和标签生成器的简单组合。

<%= div_for(@people, :class => "foo") do |person| %>
    <%= person.name %>
<% end %>

答案 1 :(得分:6)

div_for为你做了一些“魔术”,因为它设置了它生成的元素的类和ID。

如果您不打算使用这些属性,或者打算为它们使用不同的值,则没有理由在简单的<div>标记上选择它。

无论如何都没有强烈的惯例。我多年来一直在编写Rails代码并且从未使用它,把它放在你的脑海里,没关系。有很多更重要的决定要做,比如选择erbhamlslim,或决定是否加注CoffeeScript。决定将从根本上改变你编写Rails代码的方式。

答案 2 :(得分:1)

在许多情况下,导轨'助手'就像骑自行车的训练轮。当你刚刚开始时它们会有所帮助,但是在某些时候,你会抛弃训练轮并开始做轮辋,滑动滑行和跳跃自制斜坡。

但帮助者各不相同,有些人非常乐于助人你永远不会摆脱它们,其他人则在你想开始做自行车时会受到阻碍。

如果您发现使用任何特定的“助手”会使您的风格痉挛,请停止使用它!