Some things seem like they will never be clear with Rails. It took me half a day to figure out how to render a partial using unobtrusive js, but it is not clear why it works and why it went through all the singular plural stuff.
In the show view of a model, I wanted to display two related lists/ indexes (with a :remote => true link to load them). One of the items has a controller, but I normally just create a partial to display the list because all the features in the index view may not apply. The other item does not have a controller and lives within its parent model.
the routes: resources :stages do resources :assessors, :only => [:index, :new, :create] member do get "import" get "applicants" end end
Applicants live only with stages and are dynamically created/updated.
Following the Railscast on unobtrusive JS and trying to turn it into something that would load a partial, nothing seemed to work. I could not access my _applicants.html.erb with js, it wanted it in the assessors view. I finally got an error on the log that said, not only does it want it in the assessors view directory, it wants it named _assessor - even thought it is a list.
Same thing with the applicants. It would take the applicants.js.erb file in the stages directory, but wanted a singular partial in the applicants view - which I did not have.
The JS line is:
$("related").update("<%= escape_javascript(render(@applicants))%>");
The render call won't accept partial, file name or about anything else I tried.
I know there is not a lot out there yet on rails3 and unobtrusive JS, but if someone could enlighten me, I'd appreciate it.
Steve