Sean, I've updated to 1.9.2p136, completely removed my data from my riak store and removed all the devise code from my User model and I'm still getting the same issue.
--- 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 --- --- 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 --- Here's the exact input and output from the steps: $ rails console Loading development environment (Rails 3.0.3) ruby-1.9.2-p136 :001 > user = User.new => <User:[new] email=nil password=nil password_confirmation=nil encrypted_password=nil password_salt=nil reset_password_token=nil confirmation_token=nil confirmed_at=nil confirmation_sent_at=nil created_at=2011-02-08 21:21:13 +0000 updated_at=nil> ruby-1.9.2-p136 :002 > user.save => false ruby-1.9.2-p136 :003 > user.email = "stephenall...@stevesmiscellany.com" => "stephenall...@stevesmiscellany.com" ruby-1.9.2-p136 :004 > user.save => true ruby-1.9.2-p136 :005 > journal = JournalEntry.new => <JournalEntry: short_title=nil title=nil entry=nil created_at=2011-02-08 21:23:17 +0000 updated_at=nil> ruby-1.9.2-p136 :006 > journal.short_title = "test" => "test" ruby-1.9.2-p136 :007 > journal.title = "test" => "test" ruby-1.9.2-p136 :008 > journal.entry = "test" => "test" ruby-1.9.2-p136 :009 > journal.user = user => <User:stephenall...@stevesmiscellany.com email="stephenall...@stevesmiscellany.com" password=nil password_confirmation=nil encrypted_password=nil password_salt=nil reset_password_token=nil confirmation_token=nil confirmed_at=nil confirmation_sent_at=nil created_at=2011-02-08 21:21:13 UTC updated_at=2011-02-08 21:21:39 UTC> ruby-1.9.2-p136 :010 > journal.save => true ruby-1.9.2-p136 :011 > journal.user => <User:stephenall...@stevesmiscellany.com email="stephenall...@stevesmiscellany.com" password=nil password_confirmation=nil encrypted_password=nil password_salt=nil reset_password_token=nil confirmation_token=nil confirmed_at=nil confirmation_sent_at=nil created_at=2011-02-08 21:21:13 UTC updated_at=2011-02-08 21:21:39 UTC> ruby-1.9.2-p136 :012 > journal = JournalEntry.first => <JournalEntry:test short_title="test" title="test" entry="test" created_at=2011-02-08 21:23:17 UTC updated_at=2011-02-08 21:24:12 UTC> ruby-1.9.2-p136 :013 > journal.user (Object doesn't support #inspect) => ruby-1.9.2-p136 :014 > Maybe I'm doing something wrong here? If not, I'll try creating a simple dummy model to associate the journal entry with to see whether it's something else/some of the devise code is still active somewhere in the User model. Cheers, Steve On 8 Feb 2011, at 8:28 PM, Sean Cribbs wrote: > You might also try upgrading to 1.9.2p136 (I hope you're using rvm). I'm not > convinced that's the problem, however. > > Sean Cribbs <s...@basho.com> > Developer Advocate > Basho Technologies, Inc. > http://basho.com/ > > On Feb 8, 2011, at 3:11 PM, Stephen Allred wrote: > >> Sean >> >> $ ruby -v >> ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.4.3] >> >> I'll try cleaning out my riak store and then without the devise code give it >> a go. >> >> Cheers, >> Steve >> >> On 8 Feb 2011, at 8:08PM, Sean Cribbs wrote: >> >>> 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 => "s...@basho.com") >>> => <User:s...@basho.com email="s...@basho.com" 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:s...@basho.com email="s...@basho.com" 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:s...@basho.com email="s...@basho.com" 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 <s...@basho.com> >>> 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 <s...@basho.com> >>>>> 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 <s...@basho.com> >>>>>>> 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 <s...@basho.com> >>>>>>>>> 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 >>>>>>>>>> riak-users@lists.basho.com >>>>>>>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> > _______________________________________________ riak-users mailing list riak-users@lists.basho.com http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com