The models you are refering to like Film
respresent the data that is used by the view. It's the M in MVC. In fact, I like to see them as view models, as you would probably want them to be optimized for a specific view. So each view would have its specific view model; in which you could reuse specific common models of course.
This has nothing to do with data entities, which are part of the backend and not the frontend. Data entities just represent the entities as they are stored in the database, and they are probably completely different than the view models.
In your case, Carousel
is probably just a control that you use in one or more pages. This means that you can create a Carousel view model, that contains all information for the carousel in order to display everything correctly. The Carousel view model could be a property of the page view model, that is passed to the page. The controller is responsible for getting the data from the database in the form of data entities, map those data entities to page view model and Carousel view model, and pass these to the view.
If needed you can add extra abstraction layers so that there is a service, application and domain layer in between your controller and the data layer (onion architecture etc); but this all depends on your requirements and environment.