Stephen, Without loading the devise-ripple stuff, I copied and pasted your model code into irb, and cannot reproduce the problem.
irb> user = User.create(:email => "[email protected]") => <User:[email protected] email="[email protected]" password=nil password_confirmation=nil created_at=2011-02-08 20:06:27 UTC updated_at=2011-02-08 20:06:27 UTC> irb> journal_entry = JournalEntry.new(:short_title => "test", :title => "test", :entry => "test") => <JournalEntry:test short_title="test" title="test" entry="test" created_at=2011-02-08 15:06:56 -0500 updated_at=nil> irb> journal_entry.user = user => <User:[email protected] email="[email protected]" password=nil password_confirmation=nil created_at=2011-02-08 20:06:27 UTC updated_at=2011-02-08 20:06:27 UTC> irb> journal_entry.save => true irb> journal_entry.reload => <JournalEntry:test short_title="test" title="test" entry="test" created_at=2011-02-08 20:06:56 UTC updated_at=2011-02-08 20:07:14 UTC> irb> journal_entry.user => <User:[email protected] email="[email protected]" password=nil password_confirmation=nil created_at=2011-02-08 20:06:27 UTC updated_at=2011-02-08 20:06:27 UTC> Out of curiosity, what version of Ruby are you using? Sean Cribbs <[email protected]> Developer Advocate Basho Technologies, Inc. http://basho.com/ On Feb 8, 2011, at 2:54 PM, Stephen Allred wrote: > I've tried commenting out the devise stuff and added the properties that came > from devise: > > --- user.rb --- > require 'ripple' > #require 'digest' > > class User > include Ripple::Document > > #devise :registerable, :confirmable, :database_authenticatable, > :recoverable, :validatable > > property :email, String, :presence => true > property :password, String > property :password_confirmation, String > property :encrypted_password, String > property :password_salt, String > property :reset_password_token, String > property :confirmation_token, String > property :confirmed_at, String > property :confirmation_sent_at, String > timestamps! > > key_on :email > > def key > email > end > > def id > email > end > end > --- > > I'm still getting the same "(Object doesn't support #inspect)" when I call > journal_entry.user (nil class). > > Cheers, > Steve > > > On 8 Feb 2011, at 7:01 PM, Sean Cribbs wrote: > >> I haven't played with ripple-devise. Try commenting those parts out first >> and see what happens. >> >> Sean Cribbs <[email protected]> >> Developer Advocate >> Basho Technologies, Inc. >> http://basho.com/ >> >> On Feb 8, 2011, at 1:53 PM, Stephen Allred wrote: >> >>> Sean, >>> >>> Yeah, I fetched it in using User.first before trying to assign it. >>> >>> Could this have something to do with using ripple-devise (the User document >>> is a ripple-devise user)? >>> >>> Thanks, >>> Steve >>> >>> >>> On 8 Feb 2011, at 6:47 PM, Sean Cribbs wrote: >>> >>>> Stephen, >>>> >>>> Was your User object saved before you added it the journal entry? >>>> >>>> Sean Cribbs <[email protected]> >>>> Developer Advocate >>>> Basho Technologies, Inc. >>>> http://basho.com/ >>>> >>>> On Feb 8, 2011, at 1:46 PM, Stephen Allred wrote: >>>> >>>>> Sean, >>>>> >>>>> $ puts journal_entry.robject.links.inspect >>>>> #<Set: {</riak/users/stephenallred%40stevesmiscellany.com>; >>>>> riaktag="user", </riak/journal_entries>; riaktag="up"}> >>>>> => nil >>>>> >>>>> $ journal_entry >>>>> => <JournalEntry:test short_title="test" title="test" entry="test" >>>>> created_at=2011-02-07 22:47:17 UTC updated_at=2011-02-08 18:08:47 UTC> >>>>> >>>>> $ journal_entry.user >>>>> (Object doesn't support #inspect) >>>>> => >>>>> >>>>> $ journal_entry.user.inspect >>>>> NoMethodError: undefined method `key' for nil:NilClass >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.3/lib/active_support/whiny_nil.rb:48:in >>>>> `method_missing' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/ripple-0.8.3/lib/ripple/document/finders.rb:122:in >>>>> `block in instantiate' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/ripple-0.8.3/lib/ripple/document/finders.rb:121:in >>>>> `tap' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/ripple-0.8.3/lib/ripple/document/finders.rb:121:in >>>>> `instantiate' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/ripple-0.8.3/lib/ripple/associations/one_linked_proxy.rb:25:in >>>>> `find_target' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/ripple-0.8.3/lib/ripple/associations/proxy.rb:113:in >>>>> `load_target' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/ripple-0.8.3/lib/ripple/associations/proxy.rb:41:in >>>>> `inspect' >>>>> from (irb):17 >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands/console.rb:44:in >>>>> `start' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands/console.rb:8:in >>>>> `start' >>>>> from >>>>> /Users/stephenallred/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:23:in >>>>> `<top (required)>' >>>>> from script/rails:6:in `require' >>>>> from script/rails:6:in `<main>' >>>>> >>>>> Hopefully those are useful, >>>>> Thanks for the quick response! >>>>> Steve >>>>> >>>>> On 8 Feb 2011, at 6:37 PM, Sean Cribbs wrote: >>>>> >>>>>> Stephen, >>>>>> >>>>>> Sounds like you've either found a bug. When you have saved the journal >>>>>> entry in irb, what is the output of this command? >>>>>> >>>>>> puts journal_entry.robject.links.inspect >>>>>> >>>>>> Sean Cribbs <[email protected]> >>>>>> Developer Advocate >>>>>> Basho Technologies, Inc. >>>>>> http://basho.com/ >>>>>> >>>>>> On Feb 8, 2011, at 1:23 PM, Stephen Allred wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> I'm having trouble setting up a one association in a ripple document. >>>>>>> I'm trying to setup an association between a user and a journal entry, >>>>>>> such that the journal has one user, that the user created. >>>>>>> >>>>>>> My JournalEntry document: >>>>>>> >>>>>>> --- journal_entry.rb --- >>>>>>> require 'ripple' >>>>>>> >>>>>>> class JournalEntry >>>>>>> include Ripple::Document >>>>>>> >>>>>>> property :short_title, String, :presence => true >>>>>>> property :title, String, :presence => true >>>>>>> property :entry, String, :presence => true >>>>>>> >>>>>>> timestamps! >>>>>>> >>>>>>> one :user >>>>>>> >>>>>>> key_on :short_title >>>>>>> end >>>>>>> --- >>>>>>> >>>>>>> My User document: >>>>>>> >>>>>>> --- user.rb --- >>>>>>> require 'ripple' >>>>>>> require 'digest' >>>>>>> >>>>>>> class User >>>>>>> include Ripple::Document >>>>>>> >>>>>>> devise :registerable, :confirmable, :database_authenticatable, >>>>>>> :recoverable, :validatable >>>>>>> >>>>>>> property :email, String, :presence => true >>>>>>> property :password, String >>>>>>> property :password_confirmation, String >>>>>>> timestamps! >>>>>>> >>>>>>> key_on :email >>>>>>> >>>>>>> def key >>>>>>> email >>>>>>> end >>>>>>> >>>>>>> def id >>>>>>> email >>>>>>> end >>>>>>> end >>>>>>> --- >>>>>>> >>>>>>> I've tried in the rails console to associate a user with journal_entry >>>>>>> (journal_entry.user = user), save it and reload it. The resulting >>>>>>> reloaded journal_entry does not have a user (calling journal_entry.user >>>>>>> prints "(Object doesn't support #inspect)"). >>>>>>> >>>>>>> My journal entry in riak loaded via the browser looks like: >>>>>>> >>>>>>> {"short_title":"test","title":"test","entry":"test","created_at":"Mon, >>>>>>> 07 Feb 2011 22:47:17 -0000","updated_at":"Tue, 08 Feb 2011 18:08:47 >>>>>>> -0000","_type":"JournalEntry"} >>>>>>> >>>>>>> Does anyone know what I'm doing wrong? >>>>>>> Cheers! >>>>>>> Steve >>>>>>> _______________________________________________ >>>>>>> riak-users mailing list >>>>>>> [email protected] >>>>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com >>>>>> >>>>> >>>> >>> >> > _______________________________________________ riak-users mailing list [email protected] http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
