g) Tổng quan quyển luận văn
2.3.7 Đa ngôn ngữ cho hệ thống
2.3.7.1 Myreview hỗ trợ đa ngôn ngữ
Một trong số các đặc tính quan trọng của Myreview là hỗ trợ trình bày đa ngôn ngữ. Từ đây mà hội thảo có thể đƣợc mở rộng theo hƣớng quốc tế, có thể đáp ứng đa ngôn ngữ cho mọi ngƣời.
Cơ chế dịch
Myreview có cơ chế dịch nhƣ sau:
- Tất cả các văn bản sẽ đƣợc lƣu bên trong bảng có tên là zmax_text
trong CSDL của Myreview, nó có 4 cột:
Namespace: tên của một nhóm thuộc về một phần nào đó trong Myreview.
lang : ngôn ngữ sử dụng.
text_code: mã để xác định văn bản trong namespace của lang. the_text: đoạn văn bản đầy đủ
- Khi chạy một trang, hệ thống sẽ xác định ngôn ngữ mà hệ thống đang sử dụng (đƣợc lƣu ở trong một registry tên zmax_context) . Để hiển thị một văn bản đầy đủ, ta phải hiểu rõ từng phần tử trong đối tƣợng registry, đối tƣợng chứa một mảng bên trong có chứa rất nhiều phần tử cần thiết cho một hệ thống nhƣ config(cấu hình), locale(ngôn ngữ đang đƣợc chọn),…trong đó có texts(các mã cùng giá trị văn bản tƣơng ứng với locale đang có đƣợc lấy từ bảng
zmax_text lên). Lúc này khi muốn hiển thị ta làm nhƣ ví dụ minh họa sau:
o Ta muốn đoạn văn bản ra giao diện web, với locale là vi. “Chào mừng đến với MyReview, hệ thống quản lý hội thảo!”
o Trong CSDL đƣợc lƣu trong bảng zmax_text: namespace: def
lang: vi
text_code:welcome_homepage
the_text:Chào mừng đến với MyReview, hệ thống quản lý hội thảo! o Để lấy đƣợc nội dung đoạn văn bản này:
//câu lệnh đƣợc viết bên trong các controller chính.
o Gán câu lệnh trên vào một biến chuyển ra ngoài view thì có thể hiển thị ra ngoài nhƣ ta muốn. Nhƣ đã nói, khi tải nội dung, Myreview sẽ giữ lại lựa chọn về ngôn ngữ để hiển thị ngôn ngữ cho phù hợp.
Cách sửa đổi văn bản và nhập xuất bản dịch