# Quốc tế hóa trong Django (Django) > i18n, gettext, chuỗi dịch, locale middleware, phát hiện ngôn ngữ, tệp dịch - 20 câu hỏi phỏng vấn - Senior - [Câu hỏi phỏng vấn: Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van.md) ## 1. Nên dùng hàm nào để đánh dấu một chuỗi là có thể dịch trong Django? **Câu trả lời** Hàm gettext, thường được import với bí danh _ (dấu gạch dưới), là phương pháp tiêu chuẩn để đánh dấu các chuỗi có thể dịch trong Django. Nó tra cứu bản dịch của chuỗi trong catalog thông điệp tương ứng với ngôn ngữ đang hoạt động và trả về phiên bản đã dịch nếu có. ## 2. Sự khác biệt giữa gettext() và gettext_lazy() trong Django là gì? **Câu trả lời** gettext_lazy() trả về một đối tượng proxy chỉ được đánh giá khi được chuyển thành chuỗi, điều này thiết yếu cho các bản dịch được định nghĩa ở cấp module (như trong models hoặc forms). gettext() đánh giá bản dịch ngay tại thời điểm gọi, gây vấn đề nếu ngôn ngữ chưa được xác định. ## 3. Middleware nào của Django chịu trách nhiệm kích hoạt ngôn ngữ cho mỗi request? **Câu trả lời** LocaleMiddleware kiểm tra request để xác định ngôn ngữ ưa thích của người dùng bằng cách kiểm tra nhiều nguồn: tiền tố URL, cookie, header Accept-Language của trình duyệt và thiết lập LANGUAGE_CODE. Sau đó nó kích hoạt ngôn ngữ tương ứng trong suốt thời gian xử lý request. ## Còn 17 câu hỏi nữa - Lệnh Django nào trích xuất các chuỗi có thể dịch từ mã nguồn? - Lệnh nào biên dịch các tệp dịch .po thành tệp nhị phân .mo? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Django khác - [Kiến thức cơ bản về Python](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/python-basics.md): 25 câu hỏi, Junior - [Python hướng đối tượng](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/python-oop.md): 20 câu hỏi, Junior - [Kiến thức cơ bản về Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-fundamentals.md): 20 câu hỏi, Junior - [Models Django - Cơ bản](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-models-basics.md): 22 câu hỏi, Junior - [Django Views](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-views.md): 20 câu hỏi, Junior - [Template Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-templates.md): 18 câu hỏi, Junior - [Django Forms](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-forms.md): 22 câu hỏi, Mid-Level - [QuerySets nâng cao](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-querysets.md): 25 câu hỏi, Mid-Level - [Xác thực Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-authentication.md): 22 câu hỏi, Mid-Level - [Middleware Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-middleware.md): 18 câu hỏi, Mid-Level - [Django Admin](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-admin.md): 20 câu hỏi, Mid-Level - [Django REST Framework](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-rest-framework.md): 30 câu hỏi, Mid-Level - [Signal trong Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-signals.md): 18 câu hỏi, Mid-Level - [Tải tệp lên](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-file-upload.md): 20 câu hỏi, Mid-Level - [Caching trong Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-caching.md): 20 câu hỏi, Mid-Level - [Session Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-sessions.md): 18 câu hỏi, Mid-Level - [Email trong Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-email.md): 18 câu hỏi, Mid-Level - [Kiểm thử Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-testing.md): 22 câu hỏi, Mid-Level - [Bảo mật Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-security.md): 22 câu hỏi, Mid-Level - [Triển khai Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-deployment.md): 24 câu hỏi, Mid-Level - [Django ORM nâng cao](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-orm-advanced.md): 28 câu hỏi, Senior - [Hiệu năng Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-performance.md): 24 câu hỏi, Senior - [Django & Celery](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-celery.md): 22 câu hỏi, Senior - [Django Channels](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-channels.md): 24 câu hỏi, Senior - [Django & GraphQL](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-graphql.md): 24 câu hỏi, Senior - [Django & Docker](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-docker.md): 20 câu hỏi, Senior - [Django trong hệ sinh thái Microservices](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-microservices.md): 24 câu hỏi, Senior - [Lệnh Django tùy chỉnh](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-custom-commands.md): 18 câu hỏi, Senior - [Design Patterns trong Django](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-design-patterns.md): 24 câu hỏi, Senior - [Django Async & ASGI](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-async-asgi.md): 26 câu hỏi, Senior - [Settings & Cấu hình Production](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-settings-configuration.md): 22 câu hỏi, Senior - [Observability & Monitoring](https://sharpskill.dev/vi/technologies/django/cau-hoi-phong-van/django-observability.md): 24 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/django/cau-hoi-phong-van/django-internationalization