A topic contains many items. When I try to display a topic, I need to
get its corresponding items, their attachments and display everything in
a single page. In addition I have some filters on who can
add/edit/delete topics/items. Previously I did it with ugly coding -
with all the code pressed in the Topics controller. Now I am trying to
make my application RESTful and stuck with many question marks.
How can I render all the topics, items, and attachments in a single
page. Previously I used lot of partials wherein main show page would
call _topics partial and it would then call _items partial etc…
Now with code being separated in different controllers I am not able to
use partials. Is there anyway I can do it? Also how can configure my
routes for this application. All I did was map.resources :topic,
:has_many => items, but I am not sure whether I doing it right way.
How can I render all the topics, items, and attachments in a single
page. Previously I used lot of partials wherein main show page would
call _topics partial and it would then call _items partial etc…
Then in the view you just loop through @topic.articles, etc. Just
because you have a restful URL scheme, it doesn’t mean that your view
can only display data from one model.
I tried that…
But each individual item in a topic can be edited/deleted or new one
could be added to the topic. In addition, each one has some filter on
who can edit/delete etc…
I am unable to add these add/edit/delete links to these items. Does it
mean something is wrong with my config/routes file?
Apart from default route, right now I have:
map.resources :topic, :has_many => items, :collection =>
{:populate_counties => post}
Step by step I will add other resource associations (e.g.: map.resources
:items :has_many :attachments) - when I am sure whats the right way to
do it.
Any clues?
Thanks,
CS.
Starr H. wrote:
How can I render all the topics, items, and attachments in a single
page. Previously I used lot of partials wherein main show page would
call _topics partial and it would then call _items partial etc…
Then in the view you just loop through @topic.articles, etc. Just
because you have a restful URL scheme, it doesn’t mean that your view
can only display data from one model.
I think I am doing some mistake in configuring routes.
Here is what I have in my routes:
map.resources :agendas do |agendas|
agendas.resources :items
end
I am not able to access items using this. I can fetch them (list items
related to a topic) into my view, but I am not able to form other CRUD
links to access them.
Any help appreciated…
Thanks,
CS.
Carlos S. wrote:
Thanks Starr.
I tried that…
But each individual item in a topic can be edited/deleted or new one
could be added to the topic. In addition, each one has some filter on
who can edit/delete etc…
I am unable to add these add/edit/delete links to these items. Does it
mean something is wrong with my config/routes file?
Apart from default route, right now I have:
map.resources :topic, :has_many => items, :collection =>
{:populate_counties => post}
Step by step I will add other resource associations (e.g.: map.resources
:items :has_many :attachments) - when I am sure whats the right way to
do it.
Any clues?
Thanks,
CS.
Starr H. wrote:
How can I render all the topics, items, and attachments in a single
page. Previously I used lot of partials wherein main show page would
call _topics partial and it would then call _items partial etc…
Then in the view you just loop through @topic.articles, etc. Just
because you have a restful URL scheme, it doesn’t mean that your view
can only display data from one model.