Вы можете настроить любые действия, которые вам нравятся, в вашем контроллере. Операции CRUD по умолчанию предназначены для охвата основ, но нет никаких ограничений, которые вы можете сделать.
#controller:
def change_password
render :action => "change_password"
end
#routes:
map.resource :users, :member => {:change_password => :get}
#view:
<%= form_for(@user) do |f| %>
Выше было бы создать маршрут:
/ пользователей / 1 / change_password
В представлении у вас просто есть поля для смены пароля => форма в основном остается прежней, отправляя существующее действие update .