Is it possible to create a private view and controller, so that I can only invoke it somehow from the code?
I would like to be able to display dynamic widgets in different parts of my application. I thought about creating a controller and view for them and then rendering them in places I want, however then people will be able to see them just typing the correct URL.
Or maybe I could prevent that with some rule in routes.rb?
I think that your problem will be solved using partial views, you need to create each widget like a partial view and call each partial in the view that you want to have widgets.
Also you may need to have the variables loaded like a normal view.