На Rails 3 Маршрутизация от Rails 2 - PullRequest
1 голос
/ 26 апреля 2011

Я следую этому руководству при отправке электронного письма активации:

http://www.slideshare.net/JamesEdwardGrayII/sending-email-with-rails

Я вполне уверен, что это было сделано с помощью rails 2, и маршрутизация была для меня немного проблематичной.

routes.rb:

map.activate "activate/:token", :controller => "activations", :action => "create"

включает:

activate_url(:token => @user.perishable_token, :host => "localhost:3000")

, так что localhost:3000/:token URL отправляется пользователю для активации.

Чтобы заставить его работать на рельсах 3, я попробовал следующее:

match 'activate/:token' => 'activations#create'
match 'activate/:token', :to => 'activations#create'

, но activate_url не работает.Я был бы признателен за некоторый вклад.Спасибо!

1 Ответ

0 голосов
/ 26 апреля 2011

В вашем routes.rb добавьте :as => 'activate' к вашему match методу, например так:

match 'activate/:token' => 'activations#create', :as => 'activate', и если вы используете только GET / POST, я бы изменил маршрут на этот:

Для GET:

get 'activate/:index' => 'activations#create', :as => 'activate'

или для POST

post 'activate/:index' => 'activations#create', :as => 'activate'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...