Đây là một câu hỏi thiết kế hơn là kỹ thuật, nhưng nó đã khiến tôi hoàn toàn bối rối.Jquery XHR dẫn đến sự thay đổi về sự tồn tại, thông qua làm mới, v.v.
Vì vậy, tôi có trang web (được lưu trữ qua công cụ ứng dụng của Google) liệt kê một số biểu mẫu riêng biệt (mỗi câu hỏi/câu đố). Một câu đố duy nhất có một số hộp văn bản để điền vào, cũng như một nút gửi. Sau khi nhấn gửi, yêu cầu ajax được thực hiện cho máy chủ (chạy python) để kiểm tra xem câu trả lời có đúng hay không. Đáp lại, trang cập nhật bằng cách thêm các dấu tích và dấu thập phân phù hợp bằng các hộp văn bản có liên quan, cũng như lớp phủ trung bình có độ mờ bao phủ toàn bộ câu hỏi (để cung cấp toàn bộ hiệu ứng "có màu xám").
Khi trang được làm mới, những sửa đổi này rõ ràng biến mất. Tuy nhiên, yêu cầu ajax lưu thông tin trả lời vào cơ sở dữ liệu. Các câu hỏi được tạo ra bằng cách hiển thị trang bằng cách sử dụng Jinja2.
Vì vậy, tất cả dữ liệu liên quan được lưu để lần tiếp theo người dùng quay lại trang, câu hỏi mà anh ấy trả lời trước đây vẫn chuyển sang màu xám, câu trả lời và dấu tích/dấu chéo vẫn ở đó. Tuy nhiên, tôi không thể tìm ra cách tốt nhất để làm điều này. Tôi có sửa mã cứng các sửa đổi dom cho các câu hỏi đã hoàn thành hay không bằng cách sử dụng các câu lệnh trong vòng jinja2 (ví dụ: đối với mỗi câu hỏi được tạo ra, nếu câu hỏi đó đã được trả lời sau đó sẽ hiển thị nó theo cách khác). Hoặc, sẽ tốt hơn nếu để trang tải bình thường, và sau đó thực hiện XHR tải trên cho mỗi câu hỏi/biểu mẫu trên trang?
Thực sự những gì tôi muốn làm là, khi mỗi biểu mẫu được hiển thị trong Jinja2, hãy thực hiện một xhr để xem nó có câu trả lời trong db hay không, và nếu có hành động phù hợp. Nhưng pha trộn jinja2 với ajax có vẻ khá lộn xộn, chắc chắn có một cách tốt hơn để đi về điều này?
Xin lỗi vì câu hỏi dài phức tạp, hy vọng ít nhất là dễ hiểu.
Cảm ơn - điều đó chắc chắn đã cho tôi một chút rõ ràng. Làm nó jinja2 chắc chắn là con đường để đi, bạn nói đúng - và vĩ mô âm thanh tốt. Cho đến nay tôi chỉ có một vòng lặp {% cho%} khuấy động biểu mẫu nhiều lần với các biến có liên quan, đó là lý do tại sao nó cảm thấy vụng về đang cố sửa đổi điều đó. – Cerzi