Class: ZipCode
- Inherits:
-
Object
- Object
- ZipCode
- Defined in:
- lib/zip_code.rb
Instance Attribute Summary collapse
-
#record ⇒ Object
Returns the value of attribute record.
Class Method Summary collapse
Instance Method Summary collapse
- #columns ⇒ Object
- #db ⇒ Object
-
#initialize(zipl) ⇒ ZipCode
constructor
A new instance of ZipCode.
- #valid? ⇒ Boolean
Constructor Details
#initialize(zipl) ⇒ ZipCode
Returns a new instance of ZipCode.
26 27 28 29 30 31 32 33 34 35 |
# File 'lib/zip_code.rb', line 26 def initialize(zipl) row = db.execute( "select * from zip_codes where zip = '#{zipl.to_s}';" ).first return nil unless (row.kind_of?(Array) && row[1].to_s == zipl.to_s) @record = {} columns.each_with_index do |f,i| @record[f.to_sym] = row[i] self.instance_variable_set(:"@#{f.to_s}", row[i]) end end |
Instance Attribute Details
#record ⇒ Object
Returns the value of attribute record.
3 4 5 |
# File 'lib/zip_code.rb', line 3 def record @record end |
Class Method Details
.columns ⇒ Object
18 19 20 |
# File 'lib/zip_code.rb', line 18 def self.columns ZIP_COLUMNS end |
.db ⇒ Object
9 10 11 12 |
# File 'lib/zip_code.rb', line 9 def self.db raise "No database availablbe. Please initialize it with Rake." unless ZIP_DB.kind_of?(SQLite3::Database) ZIP_DB end |
Instance Method Details
#columns ⇒ Object
22 23 24 |
# File 'lib/zip_code.rb', line 22 def columns self.class.columns end |
#db ⇒ Object
14 15 16 |
# File 'lib/zip_code.rb', line 14 def db self.class.db end |
#valid? ⇒ Boolean
37 38 39 |
# File 'lib/zip_code.rb', line 37 def valid? record.kind_of?(Hash) && record.has_key?(:zip) end |