4.1.2. Hartl rails 教程。为什么 "def full_title(page_title = '')" 而不仅仅是 "def full_title(page_title)"

4.1.2. Hartl rails tutorial. Why "def full_title(page_title = '')" and not just "def full_title(page_title)"

助手是这样的:

module ApplicationHelper

  # Returns the full title on a per-page basis.
  def full_title(page_title = '')
    base_title = "Ruby on Rails Tutorial Sample App"
    if page_title.empty?
      base_title
    else
      page_title + " | " + base_title
    end
  end
end

我不明白为什么有 "page_title = ' ' " 而不是只有参数 "page_title"

谢谢,

这是默认值。当调用 full_title 如果你没有通过 page_title 它将需要 default '' - blank string

显示参数中默认值的用法。

在这种情况下,不需要,因为有代码可以处理空参数或零参数的情况。