I am confused about where I should put code for a model that is modified in the view for another controller. Huh? Here's the situation:
I have a Phone model and an associated controller. In the Phones view you can modify simple things like who the Phone is assigned to. In order to change more low-level things about the Phone, you have to go to the Settings screen, which has its own controller.
I have partials that are used to render information about Phones in the Settings screen. Should these be kept in the app/views/settings directory or app/views/phones? What about partials that are used in both views?
Also, if there is an action in the Phones controller that is only accessible from the Settings screen, should I keep the response (eg destroy.js.erb) in app/views/settings or app/views/phones?
I know this is an old question... but here is what I do:
It is perfectly okay to have several controllers accessing the same model. I personally would put the phone partials that are used by the settings controller with the rest of the phone partials. If you have partials that have no logical home and are used in multiple views, you can always create a new folder in /app/views/ to house your shared stuff.
Regarding the destroy.js.erb, that one is a little more tricky... I don't know if there is one right way to do it.
In the end, do whatever makes the most sense.