Điểm:2

Cách thay đổi chế độ xem phía sau một tiện ích được chọn trong biểu mẫu chỉnh sửa nút thông thường

lá cờ sa

Tôi có một trường entity_reference trong một loại nội dung: trường_node_ref

Trong định nghĩa trường, nó có thể tham chiếu tất cả các nút của một loại nhất định.

Widget được sử dụng cho trường này là một lựa chọn phụ tùng

Tùy thuộc vào ngữ cảnh, trong biểu mẫu chỉnh sửa nút, tôi muốn sử dụng các chế độ xem khác nhau để điền vào #tùy chọn sau đó lựa chọn phụ tùng.

Bán tại:

Bối cảnh A -> Chế độ xem A sẽ được sử dụng

Bối cảnh B -> Chế độ xem B sẽ được sử dụng

Bối cảnh được tính toán trong logic nghiệp vụ của tôi (tôi nói về nó để chỉ ra rằng có thể sử dụng nhiều chế độ xem và sau đó, nó không thể được mã hóa trong định nghĩa trường)

Trong my_module_form_alter các #tùy chọn đã được điền và tôi không thể cập nhật mảng tiện ích đã chọn để điền chúng bằng chế độ xem tùy chỉnh. Tôi cho rằng, tôi phải móc trước đây, nhưng tôi không biết làm thế nào.

lá cờ cn
Các bối cảnh khác nhau dựa trên là gì? Nó có thể tạo sự khác biệt cho cách tiếp cận tốt nhất
Baud avatar
lá cờ sa
@Clive: Chúng dựa trên giá trị của trường máy trạng thái; đó là một trường khác của nút đã chỉnh sửa. Tùy thuộc vào trạng thái/giai đoạn/trạng thái của nút đã chỉnh sửa, tôi cần sử dụng chế độ xem A, B hoặc C để điền #options của tiện ích con đã chọn của mình.
Điểm:2
lá cờ in

Bạn có thể tạo lựa chọn tùy chỉnh cho trường tham chiếu thực thể bằng cách đặt hiển thị Tham chiếu thực thể của dạng xem làm nguồn.

Để thực hiện việc này, hãy tạo một dạng xem có màn hình Tham chiếu thực thể. Xây dựng chế độ xem đó giống như cách bạn thường làm (chọn trường sẽ hiển thị, bộ lọc cơ bản, sắp xếp, giới hạn, v.v.). Sau đó tạo bộ lọc theo ngữ cảnh tùy chỉnh, lấy bối cảnh, thêm các lớp dịch vụ cần thiết, sử dụng logic nghiệp vụ của bạn trên đó, sau đó áp dụng bộ lọc theo ngữ cảnh đó cho dạng xem.

Trong hầu hết các trường hợp, bạn tạo bộ lọc dựa trên ID của thực thể và công việc của bộ lọc là tìm hiểu xem mục đó sẽ được hiển thị hay bị chặn. Drupal tích hợp sẵn "ID nội dung từ URL" và "ID thuật ngữ phân loại từ URL" là những ví dụ về các loại bộ lọc này. Bộ lọc của bạn sẽ chỉ cần kết hợp nhiều logic hơn là chỉ so sánh các ID.

Sau đó, trên cài đặt trường tham chiếu thực thể, hãy thay đổi phương pháp tham khảo đến Dạng xem: Lọc theo dạng xem tham chiếu thực thể.

Baud avatar
lá cờ sa
Đây là một ý tưởng hay. Tôi sẽ đợi nếu ai đó không nghĩ ra mẹo hay hơn trước khi chấp nhận câu trả lời này. Tôi đã mong đợi một hook rất sớm để dễ dàng hoán đổi chế độ xem đã sử dụng (giống như chúng ta có thể làm với tiện ích tự động hoàn thành)

Đă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.