Điểm:0

Xóa bộ nhớ cache của chế độ xem cụ thể theo chương trình, dành riêng cho bộ lọc theo ngữ cảnh

lá cờ de

Tôi đang sử dụng cách sau để xóa bộ đệm xem cụ thể trên nút_presave đang hoạt động tốt.

  cache_clear_all($view_name.':'.$display_name, 'cache_views_data', TRUE);

Hiện tại, nó đang xóa tất cả các chế độ xem được tạo cho tất cả các Bộ lọc theo ngữ cảnh (id thuật ngữ phân loại). Tôi muốn chỉ có thể xóa chế độ xem cho một id thuật ngữ phân loại.

Ví dụ, nếu nút a với tid:46 được thêm vào,

Chuyện gì đang xảy ra: Tất cả bộ nhớ đệm của chế độ xem sau đều bị xóa (đã xóa khỏi cache_views_data cái bàn).

bài viết/45
bài viết/46
bài viết/47

Những gì tôi muốn xảy ra: chỉ xóa bộ nhớ cache của chế độ xem cho bài viết/46.

Vì vậy, để đạt được điều này, tôi bắt đầu đào sâu vào các bảng (chủ yếu là cache_views_data) để tìm ra mẫu của CID.

Có một chuỗi giống như UUID được thêm vào mỗi CID.

nhập mô tả hình ảnh ở đây

Những gì tôi đã biết cho đến nay là: Chuỗi này dường như giống nhau đối với một chế độ xem cụ thể. Ví dụ, đối với chế độ xem bài viết/46, nó là như nhau mỗi lần. Tôi đã thử xóa bộ đệm nhiều lần và tạo lại nhiều lần.

Tôi tin rằng nếu tôi có thể biết chuỗi chính xác cho từng chế độ xem, tôi có thể xóa bộ nhớ đệm một cách cụ thể. Vì vậy, câu hỏi của tôi là: Điều tôi đang cố gắng đạt được có thể thực hiện được không? Chuỗi có thay đổi dựa trên một số yếu tố chưa biết không? Nếu không, nó có nhất quán và đáng tin cậy không? Nếu có, thì làm cách nào tôi có thể biết điều này được tạo ra như thế nào và ở đâu?

tôi đoán là mô-đun lượt xem đang sử dụng mô-đun ctools cho việc này nhưng tôi không biết chính xác như thế nào.

No Sssweat avatar
lá cờ ua
`Tôi có thể xóa bộ nhớ đệm một cách cụ thể, Điều tôi đang cố gắng đạt được có thể thực hiện được không?` Tôi sợ không hoặc ít nhất là không nếu không có một số công việc quan trọng. Như tôi chắc rằng bạn đã biết, các thẻ bộ đệm đã được giới thiệu trong D8 chính xác cho mục đích này. D7 mà nó đơn giản thế này thì chắc nó bổ sung lâu rồi.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.