Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'rubygems'
- require 'data_mapper'
- DataMapper::Database.setup({
- :adapter => 'sqlite3',
- :database => 'datamappertest.db'
- })
- class Chain < DataMapper::Base
- property :name, :string
- has_many :residues
- end
- class Residue < DataMapper::Base
- property :name, :string
- has_one :chain
- end
- ...
- >> require 'rubygems'
- => false
- >> require 'data_mapper'
- => true
- >>
- ?> DataMapper::Database.setup({
- ?> :adapter => 'sqlite3',
- ?> :database => 'datamappertest.db'
- >> })
- => #<DataMapper::Database:0xb77f34e4 @password="", @database="datamappertest.db", @log_stream=nil, @index_path="/home/robhu/ruby/indexes", @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 @connection_pool=#<DataMapper::Support::ConnectionPool:0xb77ba7e8 @created_count=0, @max_size=4, @mutex=#<Mutex:0xb77ba7ac>, allocated{}, available_connections[], connection_proc#<Proc:0xb77f0ff0@/usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/adapters/data_object_adapter.rb:52>, configuration#<DataMapper::Database:0xb77f34e4 ..., @username="root", @schema_search_path=nil, @host="localhost", @log_level=2, @name=:default>
- >>
- ?>
- ?> class Chain < DataMapper::Base
- >> property :name, :string
- >> has_many :residues
- >> end
- => #<DataMapper::Associations::HasManyAssociation:0xb77a9240 @association_name=:residues, @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 @connection_pool=#<DataMapper::Support::ConnectionPool:0xb77ba7e8 @created_count=0, @max_size=4, @mutex=#<Mutex:0xb77ba7ac>, allocated{}, available_connections[], connection_proc#<Proc:0xb77f0ff0@/usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/adapters/data_object_adapter.rb:52>, schema#<DataMapper::Adapters::Sql::Mappings::Schema:0xb77abe3c @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 ...>, tables{Chain=>#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Table:0x..fb77abd88 @klass=Chain, @name="chains", @columns=#<SortedSet: {#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Column:0x..fb77a972c @name="name", @type=:string, @options={}>}}, name"datamappertest.db", configuration#<DataMapper::Database:0xb77f34e4 @password="", @database="datamappertest.db", @log_stream=nil, @index_path="/home/robhu/ruby/indexes", @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 ...>, username"root", schema_search_pathnil, host"localhost", log_level2, name:default, options{}, table#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Table:0x..fb77abd88 @klass=Chain, @name="chains", @columns=#<SortedSet: {#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Column:0x..fb77a972c @name="name", @type=:string, @options={}>}
- >>
- ?> class Residue < DataMapper::Base
- >> property :name, :string
- >> has_one :chain
- >> end
- => #<DataMapper::Associations::HasOneAssociation:0xb778c0f0 @association_name=:chain, @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 @connection_pool=#<DataMapper::Support::ConnectionPool:0xb77ba7e8 @created_count=0, @max_size=4, @mutex=#<Mutex:0xb77ba7ac>, allocated{}, available_connections[], connection_proc#<Proc:0xb77f0ff0@/usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/adapters/data_object_adapter.rb:52>, schema#<DataMapper::Adapters::Sql::Mappings::Schema:0xb77abe3c @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 ...>, tables{Chain=>#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Table:0x..fb77abd88 @klass=Chain, @name="chains", @columns=#<SortedSet: {#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Column:0x..fb77a972c @name="name", @type=:string, @options={}>}, Residue=>#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Table:0x..fb778c6b8 @klass=Residue, @name="residues", @columns=#<SortedSet: {#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Column:0x..fb778c5dc @name="name", @type=:string, @options={}>}}, name"datamappertest.db", configuration#<DataMapper::Database:0xb77f34e4 @password="", @database="datamappertest.db", @log_stream=nil, @index_path="/home/robhu/ruby/indexes", @adapter=#<DataMapper::Adapters::Sqlite3Adapter:0xb77ba838 ...>, username"root", schema_search_pathnil, host"localhost", log_level2, name:default, options{}, table#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Table:0x..fb778c6b8 @klass=Residue, @name="residues", @columns=#<SortedSet: {#<DataMapper::Adapters::Sqlite3Adapter::Mappings::Column:0x..fb778c5dc @name="name", @type=:string, @options={}>}
- >>
- ?> chains = Chain.all
- => [#<Chain:0x..fb776d894 @new_record=false, @name="Chain 29327", @id=1>, #<Chain:0x..fb776d614 @new_record=false, @name="Chain 499", @id=2>, #<Chain:0x..fb776d510 @new_record=false, @name="Chain 10931", @id=3>, #<Chain:0x..fb776d40c @new_record=false, @name="Chain 97583", @id=4>, #<Chain:0x..fb776d308 @new_record=false, @name="Chain 72063", @id=5>, #<Chain:0x..fb776d204 @new_record=false, @name="Chain 60698", @id=6>]
- >> chains[0]
- => #<Chain:0x..fb776d894 @new_record=false, @name="Chain 29327", @id=1>
- >> chains[0].residues
- NoMethodError: undefined method `to_sym' for nil:NilClass
- from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:91:in `items'
- from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:45:in `each'
- from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:112:in `entries'
- from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:112:in `inspect'
- from /usr/lib/ruby/gems/1.8/gems/wirble-0.1.2/./wirble.rb:417:in `output_value'
- from /usr/lib/ruby/1.8/irb.rb:151:in `eval_input'
- from /usr/lib/ruby/1.8/irb.rb:259:in `signal_status'
- from /usr/lib/ruby/1.8/irb.rb:147:in `eval_input'
- from /usr/lib/ruby/1.8/irb.rb:146:in `eval_input'
- from /usr/lib/ruby/1.8/irb.rb:70:in `start'
- from /usr/lib/ruby/1.8/irb.rb:69:in `catch'
- from /usr/lib/ruby/1.8/irb.rb:69:in `start'
- from /usr/bin/irb:13
Add Comment
Please, Sign In to add comment