View Source EctoNetwork
Ecto types to support MACADDR and Network extensions provided by Postgrex.
Although this is primarily an Ecto library, it has a hard dependency on Postgrex due to the types it is providing.
Installation
Add
:ecto_network
to your list of dependencies inmix.exs
:def deps do [ # or 0.7.0 if you're stuck on Ecto < 3 {:ecto_network, "~> 1.5.0"} ] end
Create your migrations using the Postgres types as atoms.
def change do create table(:your_table) do add :ip_address, :inet add :mac_address, :macaddr add :network, :cidr end end
Use the new types in your Ecto schemas.
schema "your_table" do field :ip_address, EctoNetwork.INET field :mac_address, EctoNetwork.MACADDR field :network, EctoNetwork.CIDR end
Contributing
I love pull requests! If you fork this project and modify it, please ping me to see if your changes can be incorporated back into this project.
That said, if your feature idea is nontrivial, you should probably open an issue to discuss it before attempting a pull request.
Copyright and License
Copyright (c) 2016 Adam Daniels and contributors
EctoNetwork is released under the MIT License. See LICENSE.md for more information.