Неразрешенный шаблон импорта при создании примера руля Rocket

Мне не удается заставить работать пример руля Rocket. Это мои зависимости Cargo.toml:

[dependencies]
rocket = "*"
rocket_codegen = "*"
rocket_contrib = "*"
serde = "*"
serde_json = "*"
serde_derive = "*"

Ошибки:

error[E0432]: unresolved import `rocket_contrib::Template`
  --> src\main.rs:29:5
   |
29 | use rocket_contrib::Template;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `Template` in the root

error[E0599]: no method named `attach` found for type `rocket::Rocket` in the current scope
  --> src\main.rs:62:10
   |
62 |         .attach(Template::fairing())
   |          ^^^^^^

Первая ошибка ищет Template и не может его найти. В репозитории git этого примера его не существует. Как это возможно, что пример работает? Я уверен, что код Rust в моем main.rs в порядке, он такой же, как в примере. Думаю, это всего лишь проблема зависимости.

Я изменил свой Cargo.toml на:

[dependencies]
rocket = "*"
rocket_codegen = "*"
serde = "*"
serde_json = "*"
serde_derive = "*"

[dependencies.rocket_contrib]
version = "*"
features = ["handlebars_templates"]

Теперь я получаю такие ошибки:

error[E0599]: no method named `attach` found for type `rocket::Rocket` in the current scope
  --> src\main.rs:62:10
   |
62 |         .attach(Template::fairing())
   |          ^^^^^^

error[E0599]: no associated item named `fairing` found for type `rocket_contrib::Template` in the current scope
  --> src\main.rs:62:17
   |
62 |         .attach(Template::fairing())
   |                 ^^^^^^^^^^^^^^^^^

person Kian    schedule 04.06.2017    source источник


Ответы (1)


Вам не хватает функции handlebars_templates. Вы можете в этом примере :

[dependencies.rocket_contrib]
version = "*" # Not a good idea to use * as version
features = ["handlebars_templates"]
person belst    schedule 04.06.2017