Google Maps w aplikacji

Chciałem sobie uprzyjemnić pracę i skorzystać z JQuery + Google Maps i dodatkowo nie chciałem rezygnować z Prototype.
Niestety pogodzenie tego wszystkiego nie jest proste. JRails też nie za bardzo pomaga. Chyba zostanę przy Google Maps + Prototype.
Chyba, że coś mi podpowiecie :slight_smile:

[quote=newman]Chciałem sobie uprzyjemnić pracę i skorzystać z JQuery + Google Maps i dodatkowo nie chciałem rezygnować z Prototype.
Niestety pogodzenie tego wszystkiego nie jest proste. JRails też nie za bardzo pomaga. Chyba zostanę przy Google Maps + Prototype.
Chyba, że coś mi podpowiecie :-)[/quote]
W jakim sensie pogodzenie?

jQuery.noConflict();

I już możesz używać jQuery obok prototype.

JRails i helpery olej w ogóle. Wiem, że ja jestem może trochę skrzywiony, ale naprawdę to jest coś co jest zupełnie zbędne i tylko psuje dobry design aplikacji. Jeżeli użwasz pluginów railsowych to musisz polegać na tym API. Jeżeli wychodzi nowa wersja prototype/scritpaculous i dodane są nowe opcje, to musisz czekać, aż wsparcie dla tych opcji będzie dodane w railsach. Jeżeli używasz jakichś dodatkowych pluginów javascriptowych, to i tak nie masz do nich wsparcia i robi Ci się miszmasz.

W jednej aplikacji przejętej po kimś innym część skryptów miałem w prototype, część dopisywałem już w jQuery. Nie ma z tym żadnych problemów. Żeby nie musieć wszędzie pisać jQuery zamiast $ możesz użyć anonimowej funkcji:

(function($) { // tutaj można używać $ korzystając z jQuery })(jQuery);

Musisz stworzyć w bazie pola o większej precyzji, daj w migracji:

t.decimal "lat", :precision => 15, :scale => 10 t.decimal "lng", :precision => 15, :scale => 10
[/quote]
Albo pole double czy też float(32)

@drogus: mam już część rzeczy gotowych w helperach, dlatego próbuję to wszystko pożenić (lenistwo?). Niestety “jQuery.noConflict();” nie rozwiązywało sprawy. Chyba muszę zrobić porządek i faktycznie całość przerzucić na JQ.

to chyba jednak sprawa reprezentacji danych (float) w mysql query browser … po zamianie pól na decimale - stare, nieskasowane rekordy (utworzone jako floaty) zostały wyświetlone ze wskazaną dokładnością … ?

OK! Udało mi się pogodzić wszystko bez przepisywania już gotowych rzeczy.
Zaczęło działać dobrze jak skorzystałem z zaleceń pod nagłówkiem “INCLUDING JQUERY BEFORE OTHER LIBRARIES”:
http://docs.jquery.com/Using_jQuery_with_Other_Libraries

Wcześniej z “noConflict” coś nie do końca grało.
W tej chwili dodałem już kilka pluginów JQ i wszystko śmiga (razem z Prototype i skryptami google maps) i nie generuje żadnych błędów po stronie JS.