/ / Jak utworzyć dwie relacje w jednym dokumencie - ruby, mongodb, asocjacje, mongodb-query, mongomapper

Jak utworzyć dwie relacje w jednym dokumencie - ruby, mongodb, asocjacje, mongodb-query, mongomapper

Używam programu mongomapper i zapisuję powiązanie przy użyciu następującej metody:

class Task
include MongoMapper::Document
key :user_id, ObjectId #also works without this line

belongs_to :user

def self.add(user)
a = self.new
a.user_id = user
a.save
end

I w modelu użytkownika dodałem: wiele: Zadania

Teraz chciałbym zapisać dwóch użytkowników (w formularzu HTML wybieram 2 użytkowników z kolekcji Users), bez korzystania z tablicy, chcę zapisać je osobno:

class Task
include MongoMapper::Document
key :from_user_id, ObjectId # user1 links to the Users model
key :to_user_id, ObjectId # user2 links to the Users model

Jak to robię?

Odpowiedzi:

1 dla odpowiedzi № 1

MongoMapper ma podobne opcje jak ActiveRecord, jeśli chodzi o określanie kluczy i nazw klas. Możesz zrobić coś takiego:

class Task
include MongoMapper::Document
key :to_user_id, ObjectId
key :from_user_id, ObjectId
belongs_to :from_user, class_name: "User", foreign_key: :from_user_id
belongs_to :to_user, class_name: "User", foreign_key: :to_user_id
end