Bên cạnh các vấn đề về đa ngôn ngữ, các vấn đề về thời gian trong Liferay cũng được quan tâm để có một ứng dụng tuyệt vời. Cũng như các vấn đề về đa ngôn ngữ, bài này sẽ giới thiệu với bạn cách làm thế nào để lưu trữ và hiển thị ngày tháng và thời gian trong Liferay Framework.
Timezone
Timezone trong Liferay có ba mức. Đó là mức cổng, mức site và mức người dùng. Sau đây là các giải thích ngắn gọn về chúng:
https://github.com/programmerit/liferay-tutorial/blob/master/Test.markdown
- Timezone mức cổng: mức này sẽ áp dụng cho bất kỳ thành phần mới nào trong cổng (ví dụ như: các site (groups), tổ chức người dùng (user organizations) và người dùng (users),...).
- Timezone mức site: timezone mức site sẽ được áp dụng cho các thành phần thuộc về site tương ứng.
- Timezone mức người dụng: chỉ áp dụng cho một người dùng cụ thể.
Mức độ ưu tiên của các mức timezone là:
- Timezone mức người dụng có độ ưu tiên cao nhất. Bất kỳ hành động nào của người dụng sẽ phụ thuộc vào timezone của chính người dùng đó.
- Timezone mức site có độ ưu tiên thứ hai sau mức người dùng.
- Và cuối cùng là timezone mức cổng.
Locale
Locale phụ thuộc vào ngôn ngữ của người dùng. Nếu người dùng thay đổi ngôn ngữ thì locale cũng sẽ thay đổi theo. Để hiển thị ngày tháng và thời gian theo định dạng của bạn, bạn phải sử dụng đúng locale. Bạn có thể lấy locale hiện tại (current locale) bằng cách gọi phương thức ThemeDisplay.getLocale() trong code jsp và phương thức ServiceContext.getLocale() trong code java.
Implementation
Mình sẽ cài đặt một ví dụ đơn giản. Nó cho phép nhập vào ngày tháng và thời gian và hiển thị lên màn hình với các định dạng khác nhau.
Nhập vào ngày tháng và thời gian
Liferay đã cung cấp một thẻ rất hữu ích cho phép nhập vào ngày tháng và thời gian. Thẻ đó là aui:input. Giá trị của thuộc tính type sẽ được đặt là 'date' hoặc 'time' để nhập vào ngày tháng và thời gian. The enter format of date and time depend on your locale.
https://github.com/programmerit/liferay-tutorial/blob/master/Test.markdown
Không có nhận xét nào:
Đăng nhận xét