Forum: Ruby on Rails different views for a single model?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Bill V. (Guest)
on 2008-12-11 18:32
(Received via mailing list)
How could you do it, in a *RESTful* way?

I  have a very simple model with 2 attrs and each view is a
Model.find_all_by_attr1 and _attr2. How is this modeled in REST?

I've been in rails for 6 months now and REST is continuing giving me
headaches and tbh,  it seems to me that it's unsuitable for user
centric applications, where the same information could be presented in
many different ways. index and show simply wouldn't cut it as it seems
to me that they are tightly coupled to a more DB-centric approach.

(Where is index fit into REST, if REST is based on CRUD? Can't I have
an "index2 or index_by_whatever_criteria_I_want, and still be
RESTful? )

Of course, decision logic could be moved to the view layer but that
seems like a regression to MVC.

Im tempted to stop thinking in REST terms and simply move on; Maybe I
just need a good reason to convince myself.

thank you
Ar C. (Guest)
on 2008-12-11 20:11
map.resources can take additional specifications for either member-level
methods (operating on a single instance of the model), or
collection-level methods (operating on a collection).

You can extend your routes in a RESTful fashion to your hearts content.

http://api.rubyonrails.org/classes/ActionControlle...
Jeff C. (Guest)
on 2008-12-11 21:30
(Received via mailing list)
On Dec 11, 10:31 am, Bill V. <removed_email_address@domain.invalid> wrote:
> How could you do it, in a *RESTful* way?
>
> I  have a very simple model with 2 attrs and each view is a
> Model.find_all_by_attr1 and _attr2. How is this modeled in REST?

Usually I do this by specifying the view/filtering criteria as query
parameters:

myapp.com/models?attr1=val1&attr2=val2

This calls the index action, and with params[:attr1] = val1 and params
[:attr2] = val2

> I've been in rails for 6 months now and REST is continuing giving me
> headaches and tbh,  it seems to me that it's unsuitable for user
> centric applications, where the same information could be presented in
> many different ways. index and show simply wouldn't cut it as it seems
> to me that they are tightly coupled to a more DB-centric approach.
>
> (Where is index fit into REST, if REST is based on CRUD? Can't I have
> an "index2 or index_by_whatever_criteria_I_want, and still be
> RESTful? )

Index and Show are both from the R of CRUD.

> Of course, decision logic could be moved to the view layer but that
> seems like a regression to MVC.
>
> Im tempted to stop thinking in REST terms and simply move on; Maybe I
> just need a good reason to convince myself.
>
> thank you

Does this help at all? The Rails conventions don't work 100% of the
time, but for me it works 95% of the time - I just have to think a bit
sometimes about what my action is accomplishing, and challenge myself
on why one on the 7 actions *wouldn't* suffice.

Jeff

purpleworkshops.com
Bill V. (Guest)
on 2008-12-15 14:24
(Received via mailing list)
Thank you all. It's still difficult to REST my brain but I'll get
there eventually
This topic is locked and can not be replied to.