Math Filters
Tài liệu theo cú pháp Lingo/Django. Cuộn xuống để đọc đầy đủ hướng dẫn; chọn tên trong danh sách để đến phần tương ứng.
Danh sách đặc tả
| THAM KHẢO | DÙNG TRONG SKAI | TRẠNG THÁI |
|---|---|---|
ceil | ceil | Đang phát triển |
floor | floor | Đang phát triển |
round | floatformat | Có sẵn · tái sử dụng |
plus | toán tử + | Có sẵn · tái sử dụng |
minus | toán tử - | Có sẵn · tái sử dụng |
times | toán tử * | Có sẵn · tái sử dụng |
divided_by | toán tử / | Có sẵn · tái sử dụng |
modulo | toán tử % | Có sẵn · tái sử dụng |
Quy ước cú pháp, bảo mật và trạng thái →
Tham khảo danh mục: Haravan. Đặc tả Skai được biên soạn độc lập theo Lingo.
ceil
Đang phát triểnLàm tròn lên. Bản thiết kế v0.1 để review trước khi triển khai, chưa phải API phát hành.
Hợp đồng sử dụng
| Đầu vào | number hữu hạn |
|---|---|
| Tham số | Không có |
| Đầu ra | integer |
Bổ sung mới; cú pháp và hành vi bên dưới là đề xuất, chưa khả dụng.
{{ 2.2|ceil }}3Trường hợp biên và an toàn
Ceil(-2.2) = -2; từ chối NaN và vô cực.
Tiêu chí nghiệm thu
- Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
- Sai tham số phải trả lỗi có tên filter/tag; preview hiển thị vị trí lỗi, production không lộ nội bộ.
- Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
- Kiểm thử escaping và profile runtime trước khi công bố cho theme.
Nguồn & quyết định chuyển đổi
Tên tham khảo: ceil. Hợp đồng và ví dụ là đề xuất riêng cho Skai, không sao chép contract Liquid.
Nguồn tham khảo Haravan · Quy ước đặc tả Skai
Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.
floor
Đang phát triểnLàm tròn xuống. Bản thiết kế v0.1 để review trước khi triển khai, chưa phải API phát hành.
Hợp đồng sử dụng
| Đầu vào | number hữu hạn |
|---|---|
| Tham số | Không có |
| Đầu ra | integer |
Bổ sung mới; cú pháp và hành vi bên dưới là đề xuất, chưa khả dụng.
{{ 2.8|floor }}2Trường hợp biên và an toàn
Floor(-2.2) = -3; không ép chuỗi thành số âm thầm.
Tiêu chí nghiệm thu
- Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
- Sai tham số phải trả lỗi có tên filter/tag; preview hiển thị vị trí lỗi, production không lộ nội bộ.
- Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
- Kiểm thử escaping và profile runtime trước khi công bố cho theme.
Nguồn & quyết định chuyển đổi
Tên tham khảo: floor. Hợp đồng và ví dụ là đề xuất riêng cho Skai, không sao chép contract Liquid.
Nguồn tham khảo Haravan · Quy ước đặc tả Skai
Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.
floatformat
Có sẵn · tái sử dụngLàm tròn số. Dùng khả năng hiện có, không tạo alias hoặc triển khai engine trùng chức năng.
Hợp đồng sử dụng
| Đầu vào | number |
|---|---|
| Tham số | digits: integer; ví dụ 2 |
| Đầu ra | string số đã định dạng |
Tái sử dụng floatformat cho nhu cầu hiển thị làm tròn; không phát triển filter round mới.
{{ 2.5|floatformat:2 }}2.50Trường hợp biên và an toàn
Dùng để hiển thị, không tính lại số tiền. Không tạo round alias hoặc thay đổi cách làm tròn của Lingo.
Tiêu chí nghiệm thu
- Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
- Khóa hành vi của implementation hiện tại bằng test; không sửa ngữ nghĩa để khớp Liquid.
- Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
- Kiểm thử escaping và profile runtime trước khi công bố cho theme.
Nguồn & quyết định chuyển đổi
Tên tham khảo: round. Dùng tên/cú pháp Lingo hoặc helper Skai ghi ở đầu trang, không tạo alias tương thích Liquid.
Nguồn tham khảo Haravan · Quy ước đặc tả Skai
Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.
toán tử +
Có sẵn · tái sử dụngCộng giá trị. Dùng khả năng hiện có, không tạo alias hoặc triển khai engine trùng chức năng.
toán tử + · thay plus
| Đầu vào | number |
|---|---|
| Tham số | Toán hạng bên phải: number |
| Đầu ra | number |
Ưu tiên toán tử Lingo sẵn có, chưa đề xuất alias plus.
{{ 12 + 3 }}15Trường hợp biên và an toàn
Không tự ép chuỗi giá có dấu phân cách thành số; kiểm tra overflow.
toán tử - · thay minus
| Đầu vào | number |
|---|---|
| Tham số | Toán hạng bên phải: number |
| Đầu ra | number |
Ưu tiên toán tử Lingo sẵn có, chưa đề xuất alias minus.
{{ 12 - 3 }}9Trường hợp biên và an toàn
Không tự ép chuỗi giá có dấu phân cách thành số; kiểm tra overflow.
toán tử * · thay times
| Đầu vào | number |
|---|---|
| Tham số | Toán hạng bên phải: number |
| Đầu ra | number |
Ưu tiên toán tử Lingo sẵn có, chưa đề xuất alias times.
{{ 12 * 3 }}36Trường hợp biên và an toàn
Không tự ép chuỗi giá có dấu phân cách thành số; kiểm tra overflow.
toán tử / · thay divided_by
| Đầu vào | number |
|---|---|
| Tham số | Toán hạng bên phải: number |
| Đầu ra | number |
Ưu tiên toán tử Lingo sẵn có, chưa đề xuất alias divided_by.
{{ 12 / 3 }}4Trường hợp biên và an toàn
Chia cho 0 phải có kiểm thử lỗi, tuyệt đối không dùng kết quả hiển thị để cập nhật giá. Quy tắc chia số nguyên giữ theo Lingo.
toán tử % · thay modulo
| Đầu vào | number |
|---|---|
| Tham số | Toán hạng bên phải: number |
| Đầu ra | number |
Ưu tiên toán tử Lingo sẵn có, chưa đề xuất alias modulo.
{{ 12 % 5 }}2Trường hợp biên và an toàn
Chia cho 0 phải có kiểm thử lỗi, tuyệt đối không dùng kết quả hiển thị để cập nhật giá. Quy tắc chia số nguyên giữ theo Lingo.
Tiêu chí nghiệm thu
- Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
- Khóa hành vi của implementation hiện tại bằng test; không sửa ngữ nghĩa để khớp Liquid.
- Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
- Kiểm thử escaping và profile runtime trước khi công bố cho theme.
Nguồn & quyết định chuyển đổi
Tên tham khảo: plus, minus, times, divided_by, modulo. Dùng tên/cú pháp Lingo hoặc helper Skai ghi ở đầu trang, không tạo alias tương thích Liquid.
Nguồn tham khảo Haravan · Quy ước đặc tả Skai
Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.