Guest User

Untitled

a guest
Apr 14th, 2018
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.90 KB | None | 0 0
  1. require 'rubygems'
  2. require 'data_mapper'
  3.  
  4. DataMapper::Database.setup({
  5. :adapter => 'sqlite3',
  6. :database => 'datamappertest.db'
  7. })
  8.  
  9.  
  10. class Chain < DataMapper::Base
  11. property :name, :string
  12. has_many :residues
  13. end
  14.  
  15. class Residue < DataMapper::Base
  16. property :name, :string
  17. has_one :chain
  18. end
  19.  
  20. ...
  21.  
  22. >> require 'rubygems'
  23. => false
  24. >> require 'data_mapper'
  25. => true
  26. >>
  27. ?> DataMapper::Database.setup({
  28. ?> :adapter => 'sqlite3',
  29. ?> :database => 'datamappertest.db'
  30. >> })
  31. => #<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>
  32. >>
  33. ?>
  34. ?> class Chain < DataMapper::Base
  35. >> property :name, :string
  36. >> has_many :residues
  37. >> end
  38. => #<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={}>}
  39. >>
  40. ?> class Residue < DataMapper::Base
  41. >> property :name, :string
  42. >> has_one :chain
  43. >> end
  44. => #<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={}>}
  45. >>
  46. ?> chains = Chain.all
  47. => [#<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>]
  48. >> chains[0]
  49. => #<Chain:0x..fb776d894 @new_record=false, @name="Chain 29327", @id=1>
  50. >> chains[0].residues
  51. NoMethodError: undefined method `to_sym' for nil:NilClass
  52. from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:91:in `items'
  53. from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:45:in `each'
  54. from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:112:in `entries'
  55. from /usr/lib/ruby/gems/1.8/gems/datamapper-0.2.3/lib/data_mapper/associations/has_many_association.rb:112:in `inspect'
  56. from /usr/lib/ruby/gems/1.8/gems/wirble-0.1.2/./wirble.rb:417:in `output_value'
  57. from /usr/lib/ruby/1.8/irb.rb:151:in `eval_input'
  58. from /usr/lib/ruby/1.8/irb.rb:259:in `signal_status'
  59. from /usr/lib/ruby/1.8/irb.rb:147:in `eval_input'
  60. from /usr/lib/ruby/1.8/irb.rb:146:in `eval_input'
  61. from /usr/lib/ruby/1.8/irb.rb:70:in `start'
  62. from /usr/lib/ruby/1.8/irb.rb:69:in `catch'
  63. from /usr/lib/ruby/1.8/irb.rb:69:in `start'
  64. from /usr/bin/irb:13
Add Comment
Please, Sign In to add comment