Devise route for confirmation error with :locale

Rails 3.1.3

I have setup devise and i18n . In routes.rb

    scope "/:locale" do
        devise_for :users, :controllers => { :registrations =>
'registrations' }

But in the process of confirmation,

No route matches {:action=>"create",

There is a similar issue such as
But I don't quite understand what to do as explained in this URL.

"Yes, you need to copy the views to your application and change the
confirmation_url (and all other calls) to pass the locale as parameter.
Another option is to configure default_url_options to include :locale.
There is probably something in the wiki, if not, check Rails

Could anyone explain this to me more specifically?


I have added

    def default_url_options(options={ })
        logger.debug "default_url_options is passed options:
        { :locale => I18n.locale }

in application_controller.rb.

But I noticed that the log shows

Started GET "/en/users/sign_up" for at 2012-12-12 14:49:09
  Processing by RegistrationsController#new as HTML
  Parameters: {"locale"=>"en"}
default_url_options is passed options: {}

no parameter is passed!

I don't know why...