Điểm:0

Xem xuất dữ liệu với bảng tùy chỉnh không hoạt động nếu người dùng không phải là quản trị viên

lá cờ vn

Tôi đang làm việc trên trang web Drupal 9 hiển thị dữ liệu bảng tùy chỉnh và tôi cần cung cấp liên kết xuất CSV/XLS cho trang web đó.
Hiện tại, tôi đã xác định chế độ xem sử dụng dữ liệu bảng tùy chỉnh nhờ vào VBảng tùy chỉnh iews mô-đun và nó hoạt động tốt. tôi đã cài đặt Lượt xem Xuất dữ liệu mô-đun và định cấu hình màn hình để xuất dữ liệu dưới dạng CSV. Màn hình này được gắn vào màn hình cơ sở.
Nút CSV được hiển thị trên chế độ xem và khi tôi đăng nhập với tư cách quản trị viên, mọi thứ đều hoạt động tốt. Khi tôi chỉ là người dùng được xác thực và tôi nhấp vào nút, màn hình được đính kèm với bản xuất CSV sẽ được hiển thị và xuất ở dạng CSV (vì vậy có tất cả HTML trong tệp).

Tôi nghĩ đó là vấn đề về quyền: Xuất sử dụng mô-đun lõi REST và mô-đun này đang thực hiện kiểm tra quyền đối với thực thể (ví dụ: người dùng có thể truy cập thực thể). Theo quan điểm của tôi, không có thực thể vì dữ liệu đến từ Xem bảng tùy chỉnh mô-đun (thông qua hook_data()).

Tôi không chắc liệu có một giải pháp đơn giản hay không hay liệu tôi có cần xác định điểm cuối của riêng mình không (và tìm giải pháp để giữ các bộ lọc bị lộ). Hơn nữa, các Lượt xem Xuất dữ liệu PHPExcel mô-đun không khả dụng cho Drupal 8 và Drupal 9.

Điểm:1
lá cờ cn

Nếu những gì bạn đã làm hoạt động khi đăng nhập với tư cách là người dùng 1 (Quản trị viên), thì có vẻ như bạn cần điều chỉnh một số quyền nhất định và xóa bộ đệm để nó có hiệu lực đối với "người dùng" hoặc "vai trò" khác.

Để kiểm tra, tôi sẽ tạo một người dùng thử nghiệm và một vai trò gọi là "vai trò thử nghiệm". Sau đó, đảm bảo rằng bạn chỉ định người dùng thử nghiệm cho vai trò thử nghiệm. Sau đó, đảm bảo rằng bạn cung cấp "vai trò thử nghiệm" mà mô-đun yêu cầu.... tôi thấy bên dưới trong tài liệu về xem bảng xuất

Bạn cũng có thể kiểm tra xem người dùng/vai trò đã xác thực đã kiểm tra những điều sau chưa, nếu bạn không muốn tạo người dùng/vai trò thử nghiệm (/admin/người/quyền).

Tôi cho rằng các quyền bên dưới đi kèm với mô-đun và bạn sẽ thấy liệu sau khi cài đặt mô-đun và xóa bộ nhớ cache, v.v.

  • Định cấu hình quyền của người dùng trong Quản trị » Mọi người » Quyền:

    • Thêm bảng tùy chỉnh trong dạng xem

      Cấp cho người dùng quyền truy cập để thêm bảng tùy chỉnh của anh ấy vào hệ thống.

    • Quản lý tất cả bảng tùy chỉnh trong chế độ xem

      Cấp cho người dùng quyền truy cập để quản lý tất cả các bảng tùy chỉnh, được thêm bởi tất cả người dùng

    • Quản lý bảng tùy chỉnh riêng trong chế độ xem

      Cấp cho người dùng quyền truy cập để quản lý các bảng tùy chỉnh của riêng họ

  • Quản lý bảng tùy chỉnh trong Quản trị» Cấu trúc» Lượt xem» Xem tùy chỉnh người đàn ông bàn

Ngoài ra, hãy kiểm tra kỹ xem bạn có cấu hình này cho module xuất dữ liệu (đặc biệt #8)

Cuối cùng, đăng nhập với tư cách là "người dùng thử" và kiểm tra.

Kiểm tra nhật ký nếu một số bước không hoạt động (quản trị viên/báo cáo/dblog)

lá cờ vn
Cảm ơn sự giúp đỡ của bạn @ salah-1! Các quyền của Chế độ xem Bảng tùy chỉnh chỉ xử lý định nghĩa bảng tùy chỉnh trong văn phòng hỗ trợ, không phải với quá trình xuất. Nhưng để chắc chắn, tôi đã làm những gì bạn nói và kiểm tra mọi quyền đối với người dùng đã được xác thực. Nhưng vấn đề vẫn còn đó (sau khi xóa bộ đệm):/ Khi tôi kiểm tra nhật ký, tôi thấy một thông báo: `Lưu ý: Chỉ mục không xác định: #content_type dans Drupal\views_data_export\Plugin\views\display\DataExport::buildStandard() (/home/a-adamezyk/dev/orange-cmu/web/modules/contrib/views_data_export/src/Plugin /views/display/DataExport.php ligne 190)`
salah-1 avatar
lá cờ cn
Bạn có một số loại mảng? lỗi đang trỏ đến chỉ mục mảng không xác định. Bạn đã viết mã đó? /home/a-adamezyk/dev/orange-cmu/web/modules/contrib/views_data_export/src/Plugin/views/display/DataExport.php? nếu vậy hãy nhìn vào dòng 190.Nếu bạn không viết mã đó, hãy xem kỹ loại nội dung hoặc trường bạn đã xác định.
lá cờ vn
Tôi có một mảng. Đối với quản trị viên, nó chứa dữ liệu content_type + csv. Đối với người dùng được xác thực, không có content_type và không có dữ liệu csv. Tôi không viết mã này, nó là từ mô-đun xuất dữ liệu dạng xem. Trong mô-đun này, tôi thấy có một dòng trả về dữ liệu tốt cho quản trị viên, nhưng không phải cho các vai trò khác: `$output = (string) $renderer->renderRoot($build);` Nhưng tôi không thể hiểu được tại sao...

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