# Which views are rendered for an URL

**URL:** <https://www.ruby-forum.com/t/which-views-are-rendered-for-an-url/187193>\
**Category:** Rails\
**Created:** [April 19, 2010, 4:15pm UTC](https://www.ruby-forum.com/t/which-views-are-rendered-for-an-url/187193 "2010-04-19T16:15:00Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![arvias](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ac91a4/32.png) [@arvias](https://www.ruby-forum.com/u/arvias)\
**Post date:** [April 19, 2010, 4:15pm UTC](https://www.ruby-forum.com/t/which-views-are-rendered-for-an-url/187193/1 "2010-04-19T16:15:00Z")

</div>

Hi,

Is there a way I can figure out which files are run for a specific  
URL?

Given [http://www.planet.com/countries](http://www.planet.com/countries) files like: countries/  
index.html.erb, countries/\_country.html.erb, layouts/  
application.html.erb and so on.

## Thank You

M.

---

<div class="post-metadata">

**Author:** ![arvias](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ac91a4/32.png) [@arvias](https://www.ruby-forum.com/u/arvias)\
**Post date:** [April 19, 2010, 6:29pm UTC](https://www.ruby-forum.com/t/which-views-are-rendered-for-an-url/187193/2 "2010-04-19T18:29:45Z")

</div>

Marcelo B. wrote:

> Given [http://www.planet.com/countries](http://www.planet.com/countries) files like: countries/  
> index.html.erb, countries/\_country.html.erb, layouts/  
> application.html.erb and so on.

You really need to look at the routing and the controller code and the  
request type to know for sure.

[http://www.planet.com/countries](http://www.planet.com/countries) will generally go to the countries  
controller, the index method in that controller, using  
application.html.erb and the index.html.erb view to render the view.  
That is all dependent on the assumption that the application does not  
diverge from ‘vanilla’ Rails.

What template does the controller actually use? Does the index method go  
to index.html.erb, or is the controller method actually invoking a  
different view?, etc…

That’ll get you to the first view level. Then you need to see what the  
particular view does. Does it include partials? If so, which ones and  
from where?

---

<div class="post-metadata">

**Author:** ![arvias](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ac91a4/32.png) [@arvias](https://www.ruby-forum.com/u/arvias)\
**Post date:** [April 19, 2010, 6:36pm UTC](https://www.ruby-forum.com/t/which-views-are-rendered-for-an-url/187193/3 "2010-04-19T18:36:41Z")

</div>

If developer followed starndart rules and pure REST, you could guess  
that  
`countries/105`  
will render  
`app/views/countries/show.html.erb`

But sometimes it’s not that simple. So, you need to look at `routes.rb`  
to  
find which controller and action this URL calls. And then look inside  
action  
for irregular ‘render :something’.

Also, look through log/development(test/production).log for strings like  
“Rendering template something/something.erb”.  
I’m not sure about Webrick, but Mongrel will show you that info in logs.

---

<div class="post-metadata">

**Author:** ![arvias](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ac91a4/32.png) [@arvias](https://www.ruby-forum.com/u/arvias)\
**Post date:** [April 20, 2010, 5:11am UTC](https://www.ruby-forum.com/t/which-views-are-rendered-for-an-url/187193/4 "2010-04-20T05:11:48Z")

</div>

On Mon, Apr 19, 2010 at 9:13 AM, Marcelo B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> Hi,
> 
> Is there a way I can figure out which files are run for a specific  
> URL?
> 
> Given [http://www.planet.com/countries](http://www.planet.com/countries) files like: countries/  
> index.html.erb, countries/\_country.html.erb, layouts/  
> application.html.erb and so on.

Probably not _exactly_ what you’re after, but  
[GitHub - anildigital/partioprint: It helps you to find out what partials were rendered for the generating html with erbs](http://github.com/anildigital/partioprint) might be of interest.

It adds (in dev mode) the names of partials as HTML comments in the  
output  
rendered via ERB files.
