# Biểu mẫu Symfony (Symfony) > FormType, form builder, validation, CSRF, tải lên tệp, kiểu form tùy chỉnh, data transformers - 22 câu hỏi phỏng vấn - Junior - [Câu hỏi phỏng vấn: Symfony](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van.md) ## 1. Lớp cơ sở nào cần được kế thừa để tạo một kiểu form tùy chỉnh trong Symfony? **Câu trả lời** AbstractType là lớp cơ sở mà tất cả các kiểu form Symfony phải kế thừa. Nó cung cấp phương thức buildForm() để cấu hình các trường và configureOptions() để định nghĩa các tùy chọn form như data_class. Cách tiếp cận hướng đối tượng này cho phép tái sử dụng form trên nhiều controller. ## 2. Nên dùng phương thức nào trong một FormType để thêm các trường vào form? **Câu trả lời** Phương thức buildForm() nhận một FormBuilderInterface cho phép thêm các trường thông qua phương thức add(). Phương thức này được gọi tự động khi form được tạo và cho phép định nghĩa tất cả các trường cùng với kiểu và tùy chọn tương ứng của chúng. ## 3. Làm thế nào để xử lý việc gửi form trong một controller Symfony? **Câu trả lời** Phương thức handleRequest() đọc dữ liệu từ request HTTP và gắn nó vào form. Sau đó, isSubmitted() kiểm tra xem form đã được gửi hay chưa và isValid() xác minh rằng dữ liệu đáp ứng các ràng buộc validation. Mẫu này là chuẩn cho tất cả các form Symfony. ## Còn 19 câu hỏi nữa - Tùy chọn nào liên kết một form với một lớp entity trong configureOptions()? - Làm thế nào để lấy dữ liệu đã gửi từ một form đã được validation? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Symfony khác - [PHP Hiện Đại (8.1+)](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/php-modern-features.md): 20 câu hỏi, Junior - [Kiến thức cơ bản về Symfony](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/symfony-basics.md): 25 câu hỏi, Junior - [Routing & Controllers](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/routing-controllers.md): 20 câu hỏi, Junior - [Twig & Templates](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/twig-templates.md): 20 câu hỏi, Junior - [Kiến thức cơ bản về Doctrine ORM](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/doctrine-orm-basics.md): 25 câu hỏi, Junior - [Xác thực dữ liệu](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/validation.md): 18 câu hỏi, Junior - [Dependency Injection & Services](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/dependency-injection.md): 24 câu hỏi, Mid-Level - [Security & Authentication](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/security-authentication.md): 26 câu hỏi, Mid-Level - [Doctrine Nâng cao](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/doctrine-advanced.md): 24 câu hỏi, Mid-Level - [API Platform](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/api-platform.md): 22 câu hỏi, Mid-Level - [Serializer Component](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/serializer.md): 20 câu hỏi, Mid-Level - [Events & Event Subscribers](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/events-subscribers.md): 20 câu hỏi, Mid-Level - [Console & Commands](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/console-commands.md): 18 câu hỏi, Mid-Level - [Messenger Component](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/messenger.md): 22 câu hỏi, Mid-Level - [HTTP Client](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/http-client.md): 18 câu hỏi, Mid-Level - [Cache & Hiệu năng](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/cache.md): 20 câu hỏi, Mid-Level - [Workflow Component](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/workflow.md): 18 câu hỏi, Mid-Level - [Testing Symfony](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/testing.md): 22 câu hỏi, Mid-Level - [Mailer Component](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/mailer.md): 16 câu hỏi, Mid-Level - [Bản dịch & i18n](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/translations.md): 16 câu hỏi, Mid-Level - [EasyAdmin Bundle](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/easyadmin.md): 18 câu hỏi, Mid-Level - [Kiến trúc Symfony](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/architecture-patterns.md): 24 câu hỏi, Senior - [Hiệu năng & Tối ưu hóa](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/performance-optimization.md): 22 câu hỏi, Senior - [Bảo mật nâng cao](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/security-advanced.md): 22 câu hỏi, Senior - [Custom Bundle](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/custom-bundles.md): 20 câu hỏi, Senior - [Microservices với Symfony](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/microservices.md): 22 câu hỏi, Senior - [Real-time & WebSockets](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/real-time.md): 18 câu hỏi, Senior - [Deployment & DevOps](https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/deployment-devops.md): 20 câu hỏi, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/vi/technologies/symfony/cau-hoi-phong-van/forms