Điểm:1

Ghi đè quyền truy cập tệp riêng tư mặc định

lá cờ in

Trong trang web tôi đang phát triển, thư mục tệp riêng tư nằm ngoài thư mục gốc của tài liệu.
Tôi có một loại nội dung (chương) với một trường tệp lưu trữ các tệp của nó trong thư mục tệp riêng tư. Khi một chương nút được xuất bản, người dùng có thể truy cập tệp của nó, nhưng khi nút không được xuất bản, người dùng không thể truy cập tệp của nó. Họ nhận được một trang bị từ chối truy cập.

Làm cách nào tôi có thể kiểm soát quyền truy cập vào tệp đính kèm và cho phép người dùng truy cập tệp đính kèm khi nút chưa được xuất bản, trong một mô-đun tùy chỉnh?

Điểm:2
lá cờ de

Với Drupal, quyền truy cập vào các tệp riêng tư được xác định bằng quyền truy cập vào thực thể mà chúng được đính kèm. Tôi sẽ tạo một loại thực thể phương tiện mới, đặt bộ lưu trữ tệp ở chế độ riêng tư. Sau đó, bạn có thể thiết lập quy tắc truy cập tùy chỉnh cho loại thực thể, sử dụng phương pháp Drupal tiêu chuẩn. Người dùng có quyền truy cập vào thực thể đó sẽ được phép truy cập vào tệp riêng tư và người dùng không có quyền truy cập vào thực thể đó sẽ bị từ chối truy cập vào tệp. Sau đó, bạn có thể đính kèm mục phương tiện vào bất kỳ nút hoặc thực thể nào khác mà bạn cần.

lá cờ in
Cảm ơn vì gợi ý này @Jaypan. Mỗi nút chương có một hộp kiểm `công khai` kiểm soát liệu `pdf` cho nó có thể được truy cập bởi những người khác ngoài quản trị viên hay không. Ngoài ra, nút `book` là nút gốc của nút `chương` có hộp kiểm `công khai` sẽ ghi đè hộp kiểm `công khai` cho các chương của nó. Vì vậy, tôi cần kiểm tra cả hai giá trị trường đó để xác định xem `pdf` cho `chương` có nên được xem công khai hay không. Phương pháp đề xuất của bạn sẽ cho phép điều đó?
Jaypan avatar
lá cờ de
Chà, tôi đã giải thích cách bạn quản lý quyền đối với các tệp riêng tư. Vì vậy, nếu bạn định cấu hình quyền của mình trên loại Phương tiện để tuân theo mô tả của mình, thì có, cách tiếp cận của tôi sẽ cho phép điều đó. Về cách bạn thực sự sẽ thiết lập các quyền đó trên loại phương tiện, đó thực sự là một chủ đề khác, vì vậy bạn nên mở một câu hỏi mới nếu muốn biết thêm thông tin về điều đó. Drupal Answers là trang web dạng 1 câu hỏi - 1 câu trả lời.
lá cờ in
Cảm ơn @Jaypan.Tôi có kinh nghiệm hạn chế với nhiều lĩnh vực phát triển Drupal, bao gồm cả lĩnh vực này. Tôi sẽ thử và quay lại.

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