2015-06-17 22 views
5

Pracuję nad aplikacją sails.js. W mojej poprzedniej aplikacji żagle użyłem MySQL z domyślnym ORM linii wodnej. Planuję korzystać z Mongodb w mojej nowej aplikacji. Natknąłem się na ograniczenia związane z linią wodną, ​​z których jedną jest zapytanie o skojarzenie. Moja obecna aplikacja jest logicznie intensywna i zajmuje się wieloma danymi statystycznymi. Czy bezpiecznie jest kontynuować z linią wodną lub zastąpić ją Mongoose?Czy aplikacja Mongoose jest lepsza od wodnicy w aplikacji Sails?

+0

Nie powinno być tak trudno skonfigurować mangustę i sprawić, aby była ona współistniejąca z sql orm. –

+0

poprzez zapytanie o skojarzenie masz na myśli robienie sprzężenia podobnego do sql-like? W mangoku możesz odwoływać się do dokumentu do innych kolekcji, a więc sql-like dołączają się bardzo łatwo. http://mongoosejs.com/docs/populate.html –

+1

Mam db z 20 kolekcji i niektóre funkcje robią skomplikowane rzeczy. (jak aktualizacja kolekcji użytkowników, a następnie zaktualizowanie pola użytkownika kolekcji sklepu, a następnie zaktualizowanie niektórych innych kolekcji przy użyciu nowych informacji wygenerowanych w poprzednich 2 kolekcjach) Ale jeśli skonfigurujesz swoją pulę połączeń typu mangaj, nie powinieneś mieć problemów z robieniem takich rzeczy . –

Odpowiedz

2

Waterline poprawia się i obsługuje wiele funkcji, których ostatnio brakowało. Ponieważ oba mają teraz wsparcie asocjacyjne, każdy z nich byłby odpowiedni do tego zadania. Jedyną zaletą jest to, że jeśli projekt opiera się na Żaglach, użycie go byłoby znacznie łatwiejsze.

Waterline associations

+1

Mongoose naprawdę nie ma skojarzeń. Nie można zaludnić populacji dzieci, chyba że identyfikatory zostaną przekazane rodzicowi. –

0

Jest przykładem na Github dla Mongoose ORM Hook które powinny ułatwić wyłączenie Wodnicy i innych związanych z hakami oraz umożliwienie Mongoose jako ORM do wykorzystania w aplikacjach.