Po prostu bawiłem się wersją beta Rails 3 i zauważyłem, że funkcja łączenia z linkiem już nie istnieje. Zakładam, że istnieje alternatywna metoda osiągnięcia tego samego wyniku (zdarzenie onclick?), Ale zastanawiałem się, czy istnieje więcej sposobów Rails-3. TIA.Skąd link_to_funkcja zniknął w Rails 3?
Odpowiedz
Wydaje się, że szyny 3 zlikwidowały prototypowy helper na rzecz mniej agresywnego podejścia do biblioteki. Celem jest wyeliminowanie wszystkich wbudowanych javascript generowanych przez Rails. Prototype Helper wygenerował prawie wszystkie javascript.
Teraz dowolny z niezespolonych wariantów pomocy wygeneruje odpowiedni javascript dla połączenia zdalnego w wybranej bibliotece JS, po prostu przez podanie opcji: remote => true.
Niestety nie jest to prawdą dla metod x do funkcji. Na razie są prototype legacy helpers, które nie są już podstawową częścią Rails.
Można również użyć wywołania zdefiniowanego w ActionView :: Helpers :: PrototypeHelper :: JavascriptGenerator :: GeneratorMethods do dostarczania kodu javascript do: onclick jako html_option dla łącza_to, ale to nie jest całkiem ładne.
Przykłady:
Rails < 3 | Rails 3
link_to_remote "target", url | link_to "target", url, :remote => true
form_remote_for @post | form_for @post, :remote => true
itp ....
Albo coś w tym rodzaju. Mam problem ze znalezieniem oficjalnej dokumentacji, aby zarchiwizować moje roszczenia. Tak więc na razie konieczne będzie wykonanie release notes.
zanim będzie można go używać, musisz włączyć odpowiednie pliki źródłowe JS. Upewnij się, że ładujesz prototype.js i rails.js, lub bibliotekę i sterownik dla wybranego przez siebie środowiska JS.
Pamiętaj, że Rails 3 jest już w wersji beta. Ale to nie znaczy, że to się stało. Szczerze mówiąc nie mam pojęcia, jak zostanie zastąpiona funkcja link_to_function. Jest to sprzeczne z ideałem dyskretnego javascript.
Aby odpowiedzieć na moje własne pytanie, wydaje się to działa i jest wystarczająca do tego, co potrzebne:
link_to "name", nil, :onlick => "alert('Hello, world!')"
Problem z tym rozwiązaniem polega na tym, że jest on całkowicie natarczywy. Polecam grać z jquery lub prototypem + low pro. –
Nie sądzę, że jest to "całkowicie" natrętne, o ile tylko wywołasz procedurę obsługi z onclick = "" zamiast implementować ją właśnie tam. Cały materiał UJS nie jest jeszcze dojrzały, a nawet jego twórcy nie zgadzają się z tym, co jest zalecane (zobacz http://weblog.jamisbuck.org/2010/3/2/unobtrusive-yet-exetal zawierający komentarze). – Matt
link_to_remote można zrobić jak ten
link_to "target", remote => true
i zrobić post ajax/dostać trzeba
link_to "docelowej" {: kontroler => kontroler: Działanie => Metoda,}: oddalone => prawda
w szynach 2 tak było
link_to_remote „docelowy ”,: url => {: controller => regulator,: action => metoda,}: zdalne => true
- 1. Skąd bierze się inicjator Rails w klejnocie?
- 2. Formularz kontaktowy w Rails 3
- 3. Zintegruj Jaspera w Rails 3
- 4. Hierarchiczny MVC w Rails 3?
- 5. RAILS 3 - Transakcje w kontrolerach
- 6. Rails 3 Token autentyczności
- 7. Rails 3 Rekomendacja CMS
- 8. Rails 3 has_many changed?
- 9. Releasedate for Rails 3
- 10. Rails 3: Trasy poddomen
- 11. Rozwiązania autoryzacji Rails 3
- 12. Rails 3 standardowa lista powiadomień
- 13. Problem tworzenia Rails 3 Silnik
- 14. Gdzie jest asset_host rails 3?
- 15. Rails 3 odpowiednik dla periodically_call_remote
- 16. Rails 3: Metoda niezdefiniowana `remote_form_for”
- 17. Monkey Patching in Rails 3
- 18. Rails 3 Połączyć dwie zmienne
- 19. Rails 3 Authlogic - 'acts_as_authentic' niezdefiniowany
- 20. Rails 3 get request referrer
- 21. Rails 3 Coffee Handler Brakujący
- 22. Rails 3 Server na EC2
- 23. Przykładowa aplikacja dla Rails 3?
- 24. Rails 3: niezainicjowany stała FactoryGirl
- 25. Szukam aplikacji forum Rails 3
- 26. punkty image_tag aktywów/w Rails 3
- 27. Rails 3 Render Prawn pdf w ActionMailer
- 28. Jak uprościć "render_to_string" w Rails 3?
- 29. Jak testować trasy w wtyczkach Rails 3?
- 30. Called id do zera w Rails 3
Dla każdego, kto uważa, że to za pośrednictwem Google, należy zauważyć, że link_to_function jest zarówno w Rai ls 3 i NIE są przestarzałe. Zobacz https: // github.com/rails/rails/commit/d69e561 Lub odpowiedź tutaj: http://stackoverflow.com/questions/5063246/rails-3-status-of-link-to-function-method – noel