Question on layouts

Hey all,
Does any have suggestions to whether I should create a controller for
every web page on my site or just create an action for every web page in
same controller if those actions will never require database calls? It
doesn’t make sense to create a controller/model for a single web page if
it isn’;t going to require sql. However, I do need the url to actual
show the different page just as in any site. So I’m just curious what
are best practices to approach this. Thanks for any response.

write the function @ application_controller that can be access in any
controller.
for more info read abt application controller doc.

nirosh

nirosh wrote:

write the function @ application_controller that can be access in any
controller.
for more info read abt application controller doc.

nirosh

Hey thanks for the response.
What about the image paths. This is in css and it’s not linking to the
images folder:
background: #b8e5d1 url(/public/images/mastgrad.png) top left no-repeat;

public/images incorrect path? I don’t understand because it looks like
thats the path structure in my app.

On Sun, May 23, 2010 at 5:07 AM, John M. [email protected]
wrote:

nirosh wrote:

write the function @ application_controller that can be access in any
controller.
for more info read abt application controller doc.

Or create a utility controller, call it “home” or whatever, that handles
all the non-model pages you need. That’s pretty typical.

What about the image paths. This is in css and it’s not linking to the
images folder:
background: #b8e5d1 url(/public/images/mastgrad.png) top left no-repeat;

public/images incorrect path? I don’t understand because it looks like
thats the path structure in my app.

“public” is the root directory of all the static resources – so you
only
want to use background: #b8e5d1 url( /images/mastgrad.png ) ...

HTH,

Hassan S. ------------------------ [email protected]
twitter: @hassan

John M. wrote:

Hey all,
Does any have suggestions to whether I should create a controller for
every web page on my site or just create an action for every web page in
same controller if those actions will never require database calls?

Do neither. Use a single controller action for your static pages, and
give it the name of the page as a parameter.

It
doesn’t make sense to create a controller/model for a single web page if
it isn’;t going to require sql.

That’s poor reasoning.

However, I do need the url to actual
show the different page just as in any site. So I’m just curious what
are best practices to approach this. Thanks for any response.

You can use routing to make the URLs be anything you like.

Best,

Marnen Laibow-Koser
http://www.marnen.org
[email protected]

I understand the idea of having apache serving static content but
anyways what do you think about this as i am with similar question in
mind.
#controller
class HomeController < ApplicationController

def index
page = params[‘page’]

if page
  begin
    render "page_views/" + page
  rescue ActionView::MissingTemplate
    render "errors/404.html", :status=> 404
  end
end

end

end

#router as the last 2 lines after all options have been excluded

match ‘/:page’ => ‘home#index’ , :as=> :page
root :to => “home#index”

Would this be good practice?
Might be raw but it does the job for my needs.

What you think folks

On Sun, May 23, 2010 at 9:12 AM, Marnen Laibow-Koser
[email protected]wrote:

John M. wrote:

Hey all,
Does any have suggestions to whether I should create a controller for
every web page on my site or just create an action for every web page in
same controller if those actions will never require database calls?

Do neither. Use a single controller action for your static pages, and
give it the name of the page as a parameter.

If the OP is, in fact, talking about static pages, you might consider,
for
performance reasons, putting them in a structure under /public and
letting
Apache, et.al. deliver them without the involvement of mongrel /
passenger /
your rails app.

HTH,
Bill

I understand the idea of having apache serving static content but
anyways what do you think about this as i am with similar question in
mind.

#controller
class HomeController < ApplicationController

def index
page = params[‘page’]

if page
  begin

    # page var is the same as the name of my "page.html.erb" as in

about.html.erb to process a param with value about etc…
render “page_views/” + page

  rescue ActionView::MissingTemplate

    render "errors/404.html", :status=> 404

  end
end

end

end
#end of class

#router as the last 2 lines after all options have been excluded

match ‘/:page’ => ‘home#index’ , :as=> :page
root :to => “home#index”

Would this be good practice?
Might be raw but it does the job for my needs.

What you think folks