aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2014-05-08 11:27:35 +0200
committerYves Senn <yves.senn@gmail.com>2014-05-08 11:34:59 +0200
commit71e8adc35411ab6b357a6f97207da4d93c4fd627 (patch)
treed518bbcdc1a74f955f2b00c40739a0387076c7fc
parentd2061a224d4e99cbc0f859c50f0c35277773369e (diff)
downloadrails-71e8adc35411ab6b357a6f97207da4d93c4fd627.tar.gz
rails-71e8adc35411ab6b357a6f97207da4d93c4fd627.tar.bz2
rails-71e8adc35411ab6b357a6f97207da4d93c4fd627.zip
pg guide, inet code example. [ci skip]
-rw-r--r--guides/source/active_record_postgresql.md32
1 files changed, 29 insertions, 3 deletions
diff --git a/guides/source/active_record_postgresql.md b/guides/source/active_record_postgresql.md
index ae767769dd..fddfe24abb 100644
--- a/guides/source/active_record_postgresql.md
+++ b/guides/source/active_record_postgresql.md
@@ -12,10 +12,9 @@ It describes how to properly setup Active Record for PostgreSQL.
After reading this guide, you will know:
-
* How to use PostgreSQL's datatypes.
-* How to use UUID Primary keys.
-* How to implement Full text search with PostgreSQL.
+* How to use UUID primary keys.
+* How to implement full text search with PostgreSQL.
--------------------------------------------------------------------------------
@@ -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
`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
* [type definition](http://www.postgresql.org/docs/9.3/static/datatype-geometric.html)