查看源代码 Phoenix.Naming (Phoenix v1.7.14)

用于在 Phoenix 中对名称进行词形变化和处理的便利方法。

概述

函数

将字符串转换为驼峰式。

将属性/表单字段转换为其人性化版本。

从别名中提取资源名称。

将字符串转换为下划线式。

如果存在,从名称中删除给定的后缀。

函数

@spec camelize(String.t()) :: String.t()

将字符串转换为驼峰式。

接受可选的 :lower 标志以返回 lowerCamelCase。

示例

iex> Phoenix.Naming.camelize("my_app")
"MyApp"

iex> Phoenix.Naming.camelize("my_app", :lower)
"myApp"

通常,camelize 可以被认为是 underscore 的反向操作,但是,在某些情况下格式可能会丢失

Phoenix.Naming.underscore "SAPExample"  #=> "sap_example"
Phoenix.Naming.camelize   "sap_example" #=> "SapExample"
@spec camelize(String.t(), :lower) :: String.t()
@spec humanize(atom() | String.t()) :: String.t()

将属性/表单字段转换为其人性化版本。

示例

iex> Phoenix.Naming.humanize(:username)
"Username"
iex> Phoenix.Naming.humanize(:created_at)
"Created at"
iex> Phoenix.Naming.humanize("user_id")
"User"
指向此函数的链接

resource_name(alias, suffix \\ "")

查看源代码
@spec resource_name(String.Chars.t(), String.t()) :: String.t()

从别名中提取资源名称。

示例

iex> Phoenix.Naming.resource_name(MyApp.User)
"user"

iex> Phoenix.Naming.resource_name(MyApp.UserView, "View")
"user"
@spec underscore(String.t()) :: String.t()

将字符串转换为下划线式。

示例

iex> Phoenix.Naming.underscore("MyApp")
"my_app"

通常,underscore 可以被认为是 camelize 的反向操作,但是,在某些情况下格式可能会丢失

Phoenix.Naming.underscore "SAPExample"  #=> "sap_example"
Phoenix.Naming.camelize   "sap_example" #=> "SapExample"
@spec unsuffix(String.t(), String.t()) :: String.t()

如果存在,从名称中删除给定的后缀。

示例

iex> Phoenix.Naming.unsuffix("MyApp.User", "View")
"MyApp.User"

iex> Phoenix.Naming.unsuffix("MyApp.UserView", "View")
"MyApp.User"