У меня есть модель с названием Company, и в представлении Show есть следующее:
<div id = 'tags'>
<strong>Tags:</strong>
<% unless @company.tag_list.empty? %>
<%= @company.tag_list %>
<% end %>
<% form_remote_tag(:url => {:action => 'update'},
:update => 'tags') do %>
<%= text_field :company, :tag_list %>
<%= submit_tag 'Save' %>
<% end %>
</div>
Я использую драгоценный камень activ_as_taggable_on.
Это метод обновления в контроллере компании:
def update
@company = Company.find(params[:id])
if @company.update_attributes(params[:company])
flash[:notice] = "Successfully updated company."
redirect_to @company
else
render :action => 'edit'
end
end
Полагаю, мой желаемый результат - я мог бы добавить теги, видеть их добавленными через ajax, и все это без необходимости редактировать модель, но из представления View, вроде как вы можете добавлять теги в Wordpress.
ОБНОВЛЕНИЕ: это ошибка, которую я получаю (похоже, она не использует действие обновления:
POST http://localhost:3000/companies/10
No action responded to 10. Actions: create, destroy, edit, email_this_week, index, new, show, and update
Хммм, не уверен, почему он это делает .... он должен выполнить действие обновления, верно? Нужно ли что-то делать в моих маршрутах (даже если я указал действие?)