Timestamp troubles on embedded documents

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Done
    • 12_01_17
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Given...

      class Account
      include Mongoid::Document

      field :name, :type => String

      embeds_many :memberships
      end

      class Membership
      include Mongoid::Document
      include Mongoid::Timestamps

      field :admin, :type => Boolean, :default => false

      embedded_in :account, :inverse_of => :memberships
      end

      And I do...

      a = Account.new(:name => "Test")
      a.memberships << Membership.new
      a.save

      Timestamps will fail...

      a.memberships.first.created_at # nil
      Account.first.memberships.first.created_at # nil

      However if I...

      a.memberships.create

      Then it works...

      a.memberships.last.created_at # Nov 3...
      Account.first.memberships.last.created_at # Nov 3..

      And on another note if I...

      a = Account.new(:name => "Test")
      a.memberships.build
      a.save

      The membership will not be persisted at all...

      a.memberships.first # Membership
      Account.first.memberships.first # nil

            Assignee:
            Unassigned
            Reporter:
            David Backeus
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: