Ruby on Rails

Formularze Rails

form_with, model forms, form_for legacy, strong parameters, nested attributes, file uploads

20 pytań z rozmów·
Mid-Level
1

Który helper formularza jest zalecany w Rails 5.1+ do tworzenia formularzy?

Odpowiedź

form_with to ujednolicony helper wprowadzony w Rails 5.1, który zastępuje form_for i form_tag. Domyślnie generuje formularze z remote: true (żądania AJAX) i upraszcza składnię, automatycznie wykrywając, czy przekazano obiekt modelu. To ujednolicenie zmniejsza zamieszanie między dwoma starszymi helperami i zapewnia bardziej spójne API.

2

Jaka jest różnica między form_with model: @user a form_with url: users_path?

Odpowiedź

Przy model: @user Rails automatycznie określa URL i metodę HTTP na podstawie stanu obiektu (new_record? lub persisted?). Dla nowego rekordu używa POST do users_path, dla istniejącego PATCH do user_path(@user). Przy url: users_path trzeba ręcznie podać URL i odpowiednią metodę HTTP.

3

Jak wyłączyć domyślne przesyłanie AJAX w form_with, aby uzyskać klasyczne przesyłanie HTML?

Odpowiedź

Domyślnie form_with generuje formularze z data-remote='true', które wysyłają żądania AJAX. Aby uzyskać tradycyjne przesyłanie HTML z przeładowaniem strony, należy dodać local: true. Od Rails 6.1 domyślne zachowanie można skonfigurować globalnie za pomocą config.action_view.form_with_generates_remote_forms.

4

Jaka jest rola strong parameters w kontekście formularzy Rails?

5

Jak poprawnie zdefiniować metodę strong parameters dla modelu Article z tytułem i treścią?

+17 pytań z rozmów

Opanuj Ruby on Rails na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo