Когато внедрявате черта, тогава или чертата, или типът, за който го прилагате, трябва да бъдат дефинирани в същата кутия. Във вашия пример това не е така:чертата Responder
се дефинира с nickel
и Result
се дефинира от mongodb
.
Обичайният начин да заобиколите това е да дефинирате свой собствен тип, като обвиете желания тип в структура на кортеж с един компонент (т.нар. модел на нов тип ):
struct Result(mongodb::error::Result<Option<Document>>);
impl Responder for Result {
...