Should frontend and backend be handled by different controllers?
Posted
by DR
on Stack Overflow
See other posts from Stack Overflow
or by DR
Published on 2010-05-01T13:06:36Z
Indexed on
2010/05/01
14:37 UTC
Read the original article
Hit count: 218
In my previous learning projects I always used a single controller, but now I wonder if that is good practice or even always possible.
In all RESTful Rails tutorials the controllers have a show
, an edit
and an index
view. If an authorized user is logged on, the edit
view becomes available and the index
view shows additional data manipulation controls, like a delete button or a link to the edit
view.
Now I have a Rails application which falls exactly into this pattern, but the index
view is not reusable:
- The normal user sees a flashy index page with lots of pictures, complex layout, no Javascript requirement, ...
- The Admin user index has a completly different minimalistic design, jQuery table and lots of additional data, ...
Now I'm not sure how to handle this case. I can think of the following:
- Single controller, single view: The view is split into two large blocks/partials using an
if
statement. - Single controller, two views:
index
andindex_admin
. - Two different controllers:
BookController
andBookAdminController
None of these solutions seems perfect, but for now I'm inclined to use the 3rd option.
What's the preferred way to do this?
© Stack Overflow or respective owner