rails视图中的p和puts之间的差异

Yah*_*-Me 6 ruby ruby-on-rails

我是Rails的新手.我创建了一个控制器和一个动作.在相应的视图中,我一次使用<%= puts"asd"%>,另一次使用<%= p"asd"%>.

如果id将它显示在控制台上,并且在p的情况下,它将呈现为HTML.可能的原因是什么?

Chu*_*bas 11

puts调用方法to_s p调用方法inspect

class Foo
  def to_s
    "In #to_s"
  end
  def inspect
    "In #inspect"
  def
def
Run Code Online (Sandbox Code Playgroud)

从语义上讲,to_s意味着将对象的表示输出给用户,并检查提示对象的内部属性(有点像python的repr),但这只是一个约定.

如果您想检查HTML使用中的某些内容<%= debug "something" %>