我应该在哪里以及如何定义inet
?它是一种有效的postgreSQL数据类型。
http://www.postgresql.org/docs/8.4/static/datatype-net-types.html
rake db:migrate
== CreateSysHosts: migrating =================================================
-- create_table(:sys_hosts)
rake aborted!
An error has occurred, this and all later migrations canceled:
undefined method `inet' for #<ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::TableDefinition:0x00000005e3e068>/opt/csdashboard/db/migrate/20140628123004_create_sys_hosts.rb:4:in `block in change'
迁移文件:
class CreateSysHosts < ActiveRecord::Migration
def change
create_table :sys_hosts do |t|
t.inet :address
t.string :name
t.string :os_name
t.string :os_flavor
t.int :user_id
t.string :info
t.string :comments
t.timestamps
end
end
end
答案 0 :(得分:2)
使用postgres_ext gem支持Postgres的增强数据类型,如inet。
示例postgres_ext: Adding Postgres data types to Rails。
postgres_ext 为以下PostgresSQL类型添加了迁移和schema.rb支持: