MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

errore:il parametro di tipo `D` deve essere utilizzato come parametro di tipo per alcuni tipi locali

Quando si implementa un tratto, il tratto o il tipo per cui lo si sta implementando deve essere definito nella stessa cassa. Nel tuo esempio non è così:il tratto Responder è definito da nickel e Result è definito da mongodb .

Il modo più comune per aggirare questo problema è definire il proprio tipo, avvolgendo il tipo desiderato in una tupla struct con un singolo componente (il cosiddetto modello newtype ):

struct Result(mongodb::error::Result<Option<Document>>);

impl Responder for Result {
    ...