account/settings
アカウントを更新するためにアクセスできるページがあります。これは単一のリソースであるため、自分のアカウント設定のみを更新できます (または更新する必要があります)。フォーム エラーが表示されると、おかしな URL 形式が表示されます。
オン/account/settings/edit
の状態でエラーのあるフォームを送信しようとすると (有効な電子メール アドレスではないなど)、/account/settings.1
何が問題なのかを示す場所にリダイレクトされます (この例では、有効な電子メール アドレスではありません)。
すべてが「機能」しますが、なぜ.1
URL に追加されているのか疑問に思っていました。エラーを修正できる場所に返送されると思いましたaccount/settings
。account/settings/edit
私は何か間違ったことをしていますか?
ルート.rb
namespace :account do
resource :settings, :only => [:show, :edit, :update]
end
settings_controller.rb
def edit
@account = Account.find(session[:account][:id])
end
def update
@account = Account.find(session[:account][:id])
if @account.update_attributes(params[:account])
redirect_to account_settings_path
else
render 'edit'
end
end
レーキルート
edit_account_settings GET /account/settings/edit(.:format) account/settings#edit
account_settings GET /account/settings(.:format) account/settings#show
account_settings PUT /account/settings(.:format) account/settings#update