s_skaidocsTài liệu

Variable Tags

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.

Không phát triển lại tính năng có sẵnCác tên tham khảo từ Liquid được ánh xạ sang Lingo hoặc helper Skai. Chỉ những khả năng còn thiếu mới có badge “Đang phát triển”.

Danh sách đặc tả

THAM KHẢODÙNG TRONG SKAITRẠNG THÁI
assignsetCó sẵn · tái sử dụng
capturecaptureĐang phát triển
incrementsetCó sẵn · tái sử dụng
decrementsetCó 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.

set

Có sẵn · tái sử dụng

Gán biến. 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.

Phạm vi hỗ trợCó trong thư viện Lingo hoặc helper Skai không đồng nghĩa được phép trong mọi runtime. Chính sách allowlist vẫn áp dụng; không tự mở quyền trong thay đổi tài liệu này.

set · thay assign

Đầu vàobiểu thức
Tham sốname = expression
Đầu rabiến trong template

Dùng cú pháp chính thức Lingo; không triển khai alias Liquid.

VÍ DỤ LINGO / SKAI
{% set label = "Áo" %}{{ label }}
KẾT QUẢ MINH HỌA
Áo

Trường hợp biên và an toàn

Không tạo assign; không mutating DB qua template.

set · thay increment

Đầu vàointeger cục bộ
Tham sốset counter = counter + 1
Đầu ragiá trị tăng

Dùng cú pháp chính thức Lingo; không triển khai alias Liquid.

VÍ DỤ LINGO / SKAI
{% set counter = 0 %}{% set counter = counter + 1 %}{{ counter }}
KẾT QUẢ MINH HỌA
1

Trường hợp biên và an toàn

Không tái tạo namespace counter Liquid. Trong for dùng forloop.Counter; không state giữa request.

set · thay decrement

Đầu vàointeger cục bộ
Tham sốset counter = counter - 1
Đầu ragiá trị giảm

Dùng cú pháp chính thức Lingo; không triển khai alias Liquid.

VÍ DỤ LINGO / SKAI
{% set counter = 3 %}{% set counter = counter - 1 %}{{ counter }}
KẾT QUẢ MINH HỌA
2

Trường hợp biên và an toàn

Giữ phạm vi set của Lingo; không tag decrement riêng.

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: assign, increment, decrement. 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.

capture

Đang phát triển

Thu nội dung. Bản thiết kế v0.1 để review trước khi triển khai, chưa phải API phát hành.

Chưa khả dụngVí dụ minh họa thiết kế, không phải cú pháp đã hoạt động. Chỉ lập trình sau khi chốt kiểu dữ liệu, lỗi và kiểm thử.

Hợp đồng sử dụng

Đầu vàonội dung block
Tham sốCú pháp đề xuất: capture name … endcapture
Đầu rastring giữ trạng thái escape

Đặc tả mở rộng Skai; chưa được engine hỗ trợ.

CÚ PHÁP ĐỀ XUẤT · CHƯA CHẠY TRÊN RUNTIME
{% capture label %}Áo {{ 2 }}{% endcapture %}{{ label }}
KẾT QUẢ MONG MUỐN · ĐẶC TẢ
Áo 2

Trường hợp biên và an toàn

Giới hạn byte capture; không tự safe; bảo toàn escaping để tránh double-escape/XSS. Nhu cầu ghép chuỗi đơn giản dùng set với +.

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: capture. 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.