Wpis z mikrobloga

Pytanie mam do wykopowych ekspertów #programowanie #nodejs #mongodb #mongoose

Otóż mam [[taki oto schemat]](http://pastebin.com/Z4r4GpUn) i utworzyłem w nim wirtualną zmienną która nazywa się "authorUserName". Ma ona za zadanie znaleźć w bazie danych użytkownika którego ID jest zapisane w bazie.

Problem polega na tym, że funkcja "findById" jest asynchroniczna. To znaczy, że ta zmienna wirtualna zwróci sobie wartość null, a dopiero po pewnym czasie przyjdzie radosny callback że oto z bazy danych pobrano użytkownika. Z tym, że schemat już będzie wtedy dawno wysłany do klienta (z wartością authorUserName jako null). Co byście mi radzili w takiej sytuacji zrobić? Nazwy użytkownika nie mogę trzymać w tablicy "ChatMessage", bo może się czasami zmianiać.
  • 8
@archlinuxuser: @m4kb0l: No bo też problem polega na tym, że mam API; użytkownik mojej aplikacji wysyła zapytanie do serwera, że chce tą listę wiadomości na chacie. No więc jako informacja zwrotna wysyłam mu wyniki pobrane z bazy danych. Chcę żeby razem z tą informacją zwrotną do klienta dotarła także ta zmienna authorUserName. A jak użyję callbacków, to wyjdzie na to że najpierw wyślę mu JSON'a z danymi z bazy, a
@Pietrek558:
Nie nastawiaj się na typowe plebszenie w rodzaju "używam 5 frameworków i albo one coś mają, albo mam biblioteki, albo ni umim". Może i programiści JS jeszcze mniej wiedzą, co u licha robią, niż programiści innych języków, ale to nie znaczy, że brak samodzielnego myślenia wychodzi nam na dobre.

Robienie aplikacji nie polega na składaniu dużych, gotowych klocków. Za to sporo tam... składania małych klocków.

@archlinuxuser dobrze Ci w sumie