Buduję formularz dla użytkowników, aby móc wyszukiwać mongoDB. Użytkownik musi być w stanie dodać własne „wpisy” że tak powiem więc, że następujące zapytanie byłoby możliwe:Najlepsze praktyki/wzorce do budowania konkretnego złożonego formularza
fieldA
równa someValue
I
fieldB
większa niż someValue
LUBfieldB
mniej niż otherValue
Chciałbym, aby parametry wyglądały następująco:
{
:r4nd0m => {
:normal => ['someField', 'lte', 'someValue'],
:or => ['someField', 'gte', 'someValue']
},
:r4ndom_2 => {
:normal => ['otherfield', 'is' '42179'],
:or => [] # Not filled
}
}
Jak powinienem podać nazwę input name
s, aby to osiągnąć? Czy istnieje lepszy sposób na uzyskanie złożonych danych takich jak ta ze strony lub czy jestem na dobrej drodze?
Z ciekawości, dlaczego przesłane dane wejściowe formularza muszą wyglądać jak przykład? To nie jest poprawne JSON i będzie musiało zostać przekonwertowane na odpowiednie zapytanie MongoDB. Wygląda na to, że konieczna byłaby konwersja JavaScript w celu uzyskania danych z postaci szeregowej do formatu. – woemler
@willOEM Chciałbym osobiście przetworzyć to w prawomocne zapytanie. Po prostu nie wydaje mi się, żebym mógł zbudować zestaw wejść HTML z pomocą JavaScript, która w 100% idealnie tłumaczy się w MongoDB Query. Moim problemem jest to, że staram się to w ogóle zdarzyć. –
Hipotetycznie można, ponieważ zapytania MongoDB są obiektami JSON. Trzeba tylko zbudować logikę do tworzenia obiektów, aby właściwie zbudować zagnieżdżone i/lub logiczne i operatory oceny. Byłbym zaskoczony, gdyby biblioteka dla tego nie istniała już dla Node lub Angular. – woemler