Do you ever need to generate HTML code in a helper method? Placing it directly in Ruby strings is not very pretty. Learn a great way to generate HTML through Markaby in this episode.
def simple_error_messages_for(object_name)
object = instance_variable_get("@#{object_name}")
return if object.errors.empty?
markaby do
div.error_messages! do
h2 "#{pluralize(object.errors.count, 'error')} occurred"
p "There were problems with the following fields:"
ul do
object.errors.each_full do |msg|
li msg
end
end
end
end
end
def markaby(&block)
Markaby::Builder.new({}, self, &block)
end
本文介绍了一种通过Ruby中的Markaby库简化HTML代码生成的方法。这种方法尤其适用于辅助方法中生成HTML的需求,使得代码更加清晰易读。文章提供了一个具体的示例,展示了如何使用Markaby替代直接在Ruby字符串中编写HTML。
537

被折叠的 条评论
为什么被折叠?



