Khi bạn triển khai một đặc điểm thì đặc điểm hoặc kiểu bạn đang triển khai nó phải được xác định trong cùng một thùng. Trong ví dụ của bạn thì không phải như vậy:đặc điểm Responder
được định nghĩa bởi nickel
và Result
được định nghĩa bởi mongodb
.
Cách phổ biến để giải quyết vấn đề này là xác định kiểu của riêng bạn, bằng cách gói kiểu mong muốn vào một cấu trúc tuple với một thành phần duy nhất (cái gọi là mẫu kiểu mới ):
struct Result(mongodb::error::Result<Option<Document>>);
impl Responder for Result {
...