rom icon indicating copy to clipboard operation
rom copied to clipboard

Changeset for combined relations

Open drqCode opened this issue 6 years ago • 0 comments

class Users < ROM::Relation[:sql]
     schema(:users, infer: true) do
       associations do
          has_many :tasks
      end
     end
  end

  class Tasks < ROM::Relation[:sql]
     schema(:users, infer: true) do
        associations do
           belongs_to :user
        end
     end
  end

  class UserRepo < ROM::Repository[:users]
    # new_user = { name: "Jim", tasks: [{desc: "test"}, {desc: "test1"}]}
     def create(new_user)
        users.transaction do
           users.combine(:tasks).changeset(:create, new_user).commit
       end
     end
  end

It seems that users.combine(:tasks).changeset(:create, new_user).commit just inserts only the aggregate root.

drqCode avatar Apr 10 '18 11:04 drqCode