我在三個不同的視圖(user_view.ex
,group_view.ex
和connection_view.ex
)中具有相同的功能full_name
。我如何重構它,它是乾的?我希望full_name
函數只在項目中的一個地方。DRY查看功能
defmodule MyApp.GroupView do
use MyApp.Web, :view
alias MyApp.User
def full_name(%User{first_name: first_name,
last_name: last_name,
honorific_prefix: honorific_prefix,
honorific_suffix: honorific_suffix}) do
[honorific_prefix, first_name, last_name, honorific_suffix]
|> Enum.reject(&(&1 == ""))
|> Enum.join(" ")
end
end
'import MyApp.UserHelpers'可以放到'web/web.ex'中,所以你不必重複導入。 – tkowal