Skip to content

Commit

Permalink
pg guide, inet code example. [ci skip]
Browse files Browse the repository at this point in the history
  • Loading branch information
senny committed May 8, 2014
1 parent d2061a2 commit 71e8adc
Showing 1 changed file with 29 additions and 3 deletions.
32 changes: 29 additions & 3 deletions guides/source/active_record_postgresql.md
Expand Up @@ -12,10 +12,9 @@ It describes how to properly setup Active Record for PostgreSQL.


After reading this guide, you will know: After reading this guide, you will know:



* How to use PostgreSQL's datatypes. * How to use PostgreSQL's datatypes.
* How to use UUID Primary keys. * How to use UUID primary keys.
* How to implement Full text search with PostgreSQL. * How to implement full text search with PostgreSQL.


-------------------------------------------------------------------------------- --------------------------------------------------------------------------------


Expand Down Expand Up @@ -291,6 +290,33 @@ user.save!
The types `inet` and `cidr` are mapped to Ruby [`IPAddr`](http://www.ruby-doc.org/stdlib-2.1.1/libdoc/ipaddr/rdoc/IPAddr.html) objects. The The types `inet` and `cidr` are mapped to Ruby [`IPAddr`](http://www.ruby-doc.org/stdlib-2.1.1/libdoc/ipaddr/rdoc/IPAddr.html) objects. The
`macaddr` type is mapped to normal text. `macaddr` type is mapped to normal text.


```ruby
# db/migrate/20140508144913_create_devices.rb
create_table(:devices, force: true) do |t|
t.inet 'ip'
t.cidr 'network'
t.macaddr 'address'
end

# app/models/device.rb
class Device < ActiveRecord::Base
end

# Usage
macbook = Device.create(ip: "192.168.1.12",
network: "192.168.2.0/24",
address: "32:01:16:6d:05:ef")

macbook.ip
# => #<IPAddr: IPv4:192.168.1.12/255.255.255.255>

macbook.network
# => #<IPAddr: IPv4:192.168.2.0/255.255.255.0>

macbook.address
# => "32:01:16:6d:05:ef"
```

### Geometric Types ### Geometric Types


* [type definition](http://www.postgresql.org/docs/9.3/static/datatype-geometric.html) * [type definition](http://www.postgresql.org/docs/9.3/static/datatype-geometric.html)
Expand Down

0 comments on commit 71e8adc

Please sign in to comment.