My Rust (actix but similar to rocket syntactically) servers are almost 1:1 code similarity to my Python (flask/django) in practice. The extra verbosity tends to only be for multi threaded state management but even then I can generally wrap stuff in an Arc RWLock and be fine.
So Rust code may look jarring in-general compared to dynamic languages, and this is because Rust is a strongly typed language, but on top of that its type system also gives guarantees around data races that other typed languages don't prevent. So most Rust frameworks seem "noisy" when doing more than Hello World in my experience.
In my experience Rocket is intentionally less "batteries-included" than newer versions of frameworks like Rails and Django (especially around querying databases), but provides an opinionated approach that has minimal boilerplate in the same spirit as those frameworks. If you just want to write a Rust web service and get to the business logic, Rocket is a great choice especially if you're coming from another language.
It's a compromise. Many of the things that are runtime errors in those three will be compile time errors in Rust, but the cost of that is that you'll have those details in your face/code all the time.
I've found that chatgpt helps a lot in making Rust more approachable, and the benefits of those more easy going languages are diminishing due to that.