Có phải mọi thứ đều cần một bó?


11

Tôi đang tìm hiểu về API thực thể. Tôi có một bảng phụ đơn giản mà tôi muốn "drupalize" để tôi có thể sử dụng nó trong Chế độ xem, chẳng hạn.

Tôi đã đọc khá nhiều, xem một vài video, xem xét một vài ví dụ. Tôi bị mắc kẹt về khái niệm . Tôi hiểu các gói là gì (ví dụ các loại nút là các gói của thực thể nút).

Nhưng đối với việc sử dụng của tôi sẽ chỉ có một gói. Trong các ví dụ tôi đã thấy gói được lưu trữ trong bảng cơ sở dữ liệu; điều này là không cần thiết đối với tôi vì nó sẽ là cùng một giá trị được lưu trữ đối với mọi bản ghi. Vì vậy, tôi đã nghĩ rằng bằng cách nào đó tôi có thể bỏ qua điều này hoặc để thực thể của tôi luôn trả về một chuỗi tiêu chuẩn cho gói.

Có phải tôi đã hiểu lầm? Các gói luôn phải được thực hiện và được thực hiện ở cấp bảng cơ sở dữ liệu?

Câu trả lời:


9

Có một bó luôn, luôn luôn cần thiết cho các thực thể.

Nếu bạn không xác định (các) gói của riêng mình, hệ thống thực thể sẽ chỉ định một gói mặc định có cùng tên với loại thực thể cho bạn và loại đó sẽ được sử dụng.

Nếu bạn chỉ có một gói và chỉ có kế hoạch có một gói, thì bạn không cần phải có một trường cụ thể trong bảng thực thể của mình cho nó. Như bạn đề xuất trong câu hỏi của mình, nó sẽ luôn giống nhau, do đó sẽ là dự phòng và chỉ cần thêm chi phí phụ (tuy nhỏ) cho các truy vấn db của bạn.

Tuy nhiên, nếu bạn nghĩ rằng bạn có thể cần phân biệt giữa các loại phụ khác nhau của thực thể tại một thời điểm nào đó, thì sẽ đáng để xây dựng nó ngay từ đầu; nó thực sự phụ thuộc vào trường hợp sử dụng của bạn.


Mặc dù, nếu một thực thể phải có một gói, làm thế nào mà chính nó có thể là một thực thể (?!)
artfulrobot

1
Tôi khá chắc chắn rằng chỉ nói về ý tưởng trừu tượng hóa chức năng CRUD trên một loại thực thể chung và sử dụng lại nó trong toàn hệ thống để tất cả các đối tượng (thực thể, gói, trường, v.v.) có thể tận dụng mà không cần phải thực hiện riêng . Về mặt thực thể Drupal (nút, người dùng, v.v.), một gói rất nhiều điều khác biệt. Nếu một bó thực sự là một thực thể Drupal, thì chính nó có thể có các bó, điều đó không có ý nghĩa gì :)
Clive
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.