Có, field_delete_instance () là hàm để xóa các trường hợp trường.
Lưu ý rằng field_delete_instance()
tự động gọi field_delete_field()
nếu không có phiên bản còn lại, vì vậy rất field_delete_instance()
có thể là tất cả những gì bạn cần.
_update_7000_field_delete_instance()
được thiết kế cho các chức năng cập nhật cốt lõi. Ví dụ: trong chức năng cập nhật x_update_7000()
, bạn đang sử dụng field_delete_instance()
. Sau đó x_update_7001()
, bạn thay đổi {field_config}
bảng theo cách không nhất quán và field_delete_instance()
rõ ràng cũng cần phải thay đổi.
Nhưng bây giờ x_update_7000()
cuộc gọi đến field_delete_instance()
sẽ dẫn đến một lỗi vì bảng vẫn còn trong cấu trúc cũ. Tuy nhiên, tình huống cho các mô-đun đóng góp là khác nhau, vì chúng phải luôn được thực thi sau tất cả các cập nhật cốt lõi và do đó cần phải làm việc với phiên bản lõi gần đây nhất.
Nhưng, đây là mẫu mà bạn có thể muốn sử dụng cho các hàm API của riêng mình mà bạn đang sử dụng trong các hàm cập nhật.
Ngoài ra, các hàm _update này không thực hiện các hook vì kết quả không thể dự đoán được (ví dụ vì mô-đun mà bản cập nhật được chạy có thể bị vô hiệu hóa).