好的,所以我是一个完整的Rust新手,我正在试验Rocket.该Web框架传递了一个Form<MyStruct>,我想将MyStruct传输到我自己的自定义结构中.
struct Consumer<T> {
d: T,
}
impl<T> Consumer<T> {
fn new(form: Form<T>) -> Self {
Consumer { d: form.into_inner() }
}
}
Run Code Online (Sandbox Code Playgroud)
当然,这不起作用,我得到:
the trait `rocket::request::FromForm<'_>` is not implemented for `T`
Run Code Online (Sandbox Code Playgroud)
下一次尝试:
impl<T> Consumer<T> where T: FromForm {
fn new(form: Form<T>) -> Self {
Consumer { d: form.into_inner }
}
}
Run Code Online (Sandbox Code Playgroud)
哦哦:
impl<T> Consumer<T> where T: FromForm {
^^^^^^^^ expected lifetime parameter
Run Code Online (Sandbox Code Playgroud)
所以现在我发现自己完全无法解决这个问题!我能想到的最好的是:
impl<'f, T> Consumer<T> where T: FromForm<'f> {
fn new(form: Form<T>) -> Self {
Consumer …Run Code Online (Sandbox Code Playgroud)