API Entity Entity nào được thêm vào API Drupal và tại sao một mô-đun phụ thuộc vào nó?


12

Các Entity API mô-đun mở rộng API thực thể được định nghĩa trong Drupal. Trong trường hợp nào một mô-đun nên sử dụng API được cung cấp từ mô-đun đó? Các mô-đun triển khai các thực thể mới có dễ được viết hơn không nếu chúng phụ thuộc vào mô-đun Entity API ?

Bởi "dễ viết hơn" Tôi có nghĩa là các mô-đun sử dụng API thực thể sẽ yêu cầu viết ít mã hơn so với mô-đun không sử dụng API thực thể .

Tôi đã đọc trang dự án, nhưng tôi vẫn không hoàn toàn hiểu lý do thích tạo một mô-đun phụ thuộc vào mô-đun Entity API , thay vì mô-đun chỉ phụ thuộc vào mã lõi Drupal. Tôi hiểu rằng một mô-đun mở rộng quy tắc và triển khai thực thể nên sử dụng mô-đun Entity API ; trong trường hợp đầu tiên, lý do cũng là mô-đun Rules phụ thuộc vào mô-đun Entity API .


1
Trang dự án bạn liên kết cung cấp một cái nhìn tổng quan khá cụ thể về những gì mô-đun làm. Bạn có câu hỏi cụ thể về lý do tại sao một mô-đun sẽ phụ thuộc vào nó ngoài những gì họ đặt ra không?
jhedstrom

Nếu bạn không sử dụng mô-đun Entity API, cuối cùng bạn sẽ viết một mô-đun như dự án hộp cát này . Lưu ý rằng dự án hộp cát này không có thử nghiệm và chỉ có một người đóng góp, trong khi API thực thể có nhiều cả hai.
paul-m

Câu trả lời:


15

Chưa hoàn thành, nhưng đây là một số lợi thế mà tôi biết:

  • Lõi Drupal chỉ cung cấp một EntityControll để tải các thực thể. Để lưu, cập nhật và xóa, bạn cần phải tự viết hoặc sử dụng API thực thể.
  • Bạn có thể hiển thị các thuộc tính cơ sở của các thực thể của mình với hook_entity_property_info (), xem privateatemsg_entity_property_info () để biết ví dụ. Ưu điểm của việc này là Rules.module biết các thuộc tính thực thể của bạn và bạn đọc và viết chúng với các quy tắc. Và bạn cũng nhận được tích hợp mã thông báo miễn phí.
  • Nó cũng có thể tự động cung cấp cho bạn giao diện người dùng quản trị cho các thực thể của bạn

Bạn có ý nghĩa gì bởi một quản trị viên ui? Một số điều này được xử lý bởi cốt lõi.
googletorp

2
Core cung cấp UI để định cấu hình các trường và đính kèm chúng vào các thực thể, API thực thể cung cấp UI để tạo và quản lý các thực thể cho các thực thể tùy chỉnh, core không làm như vậy.
Berdir

1
đừng quên metadata_wrapper drupalcontrib.org/api/drupal/ , cho phép bạn dễ dàng truy cập các giá trị của trường trong mã
mojzis

7

Tích hợp Chế độ xem tự động, giao diện người dùng quản trị viên, các thực thể có thể xuất (tất cả điều này là tùy chọn). Cộng với rất nhiều cú pháp những thứ không có trong D7 và bạn cần chúng (generic entity_save (), entity_create (), đưa logic tùy chỉnh của bạn vào "các lớp thực thể" ...)

Thêm vào đó, các mô-đun (efq_view, quy tắc) làm những điều thực sự thú vị với các thuộc tính.


-1

Tôi tin rằng, api thực thể (mô-đun) về cơ bản đã bị xóa khỏi lõi 7 drupal trước khi phát hành vì nó được coi là không đầy đủ .. Chỉ có các hàm CRUD api thực thể cơ bản còn lại trong lõi drupal cho bản phát hành GM.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.