
Форми Rails
form_with, model forms, form_for legacy, strong parameters, nested attributes, file uploads
1Який хелпер форми рекомендований у Rails 5.1+ для створення форм?
Який хелпер форми рекомендований у Rails 5.1+ для створення форм?
Відповідь
form_with — це уніфікований хелпер, представлений у Rails 5.1, що замінює form_for і form_tag. За замовчуванням він генерує форми з remote: true (AJAX-запити) та спрощує синтаксис, автоматично визначаючи, чи передано об'єкт моделі. Це об'єднання зменшує плутанину між двома старішими хелперами та надає більш послідовний API.
2Яка різниця між form_with model: @user і form_with url: users_path?
Яка різниця між form_with model: @user і form_with url: users_path?
Відповідь
З model: @user Rails автоматично визначає URL і HTTP-метод залежно від стану об'єкта (new_record? чи persisted?). Для нового запису він використовує POST до users_path, для наявного — PATCH до user_path(@user). З url: users_path URL і відповідний HTTP-метод потрібно вказувати вручну.
3Як вимкнути типові AJAX-відправлення form_with, щоб отримати класичне HTML-відправлення?
Як вимкнути типові AJAX-відправлення form_with, щоб отримати класичне HTML-відправлення?
Відповідь
За замовчуванням form_with генерує форми з data-remote='true', які надсилають AJAX-запити. Щоб отримати традиційне HTML-відправлення з перезавантаженням сторінки, потрібно додати local: true. Починаючи з Rails 6.1, типову поведінку можна налаштувати глобально через config.action_view.form_with_generates_remote_forms.
Яка роль strong parameters у контексті форм Rails?
Як правильно визначити метод strong parameters для моделі Article із заголовком і вмістом?
+17 питань зі співбесід
Інші теми співбесід Ruby on Rails
Основи Ruby
Об'єктно-орієнтоване програмування в Ruby
Основи Rails
Routing & Controllers
Основи ActiveRecord
Views та шаблони ERB
Асоціації ActiveRecord
Розширені запити ActiveRecord
Автентифікація та авторизація
Сучасний Asset Pipeline та frontend
Режим API Rails
Тестування з RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Стратегії кешування
Розширені міграції
Rails Engines та модульні застосунки
Оптимізація продуктивності
Патерни проєктування Rails
Метапрограмування в Ruby
Безпека Rails
GraphQL із Rails
Розгортання та Продакшн
Monitoring & Logging
Стратегії оновлення Rails
Опануй Ruby on Rails для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно