Extend
falood opened this issue · comments
Falood Hao commented
To undefine an exposed field, use the extend
option. Useful for modifying inherited entities.
defmodule UserData do
use Maru.Entity
expose :name do
expose :first_name
expose :last_name
end
expose :address do
expose :address1
expose :address2
expose :address_state
expose :address_city
end
expose :email
expose :phone
end
defmodule UserDataDetail do
use Maru.Entity
extend UserData
expose :new_field1
end
defmodule MailingAddress do
use Maru.Entity
extend UserData, only: [
:name, address: [:address1, :address2]
]
expose :new_field2
end
defmodule BasicInfomation do
use Maru.Entity
extend UserData, except: [:address]
expose :new_field3
end