Я запускаю бета-сайт с избранной группой пользователей.Я хочу отключить регистрацию только в производственной среде и только на короткий промежуток времени (то есть я не хочу обнулять свою регистрацию вообще).Я знаю, что могу просто скрыть ссылку «зарегистрироваться», но подозреваю, что хакеры умнее, чем я, все же могут использовать маршруты RESTful для выполнения регистрации.Какой лучший способ отключить регистрацию, чтобы мои среды тестирования / разработки все еще работали, но это влияло на производительность?Спасибо за любые указатели.
Я пытался указывать именованные области таким образом, чтобы «sign_up» переходил к «sign_in», но это не сработало.Вот что я попробовал:
devise_scope :user do
get "users/sign_in", :to => "devise/sessions#new", :as => :sign_in
get "users/sign_up", :to => "devise/sessions#new", :as => :sign_up
end
В идеале, мы бы отправили пользователя на страницу "pages # registration_disabled" или что-то в этом роде.Я просто хотел, чтобы что-то работало, с чем я могу поиграть.
РЕДАКТИРОВАТЬ: я изменил модель в соответствии с запросом, затем добавил следующее в /spec/user_spec.rb
describe "validations" do
it "should fail registration if in production mode" do
ENV['RAILS_ENV'] = "production"
@user = Factory(:user).should_not be_valid
end
end
это звучит как «правда», а не как ложь.Есть ли способ смоделировать производственную среду?Я просто плевался этим.
Спасибо!