SORU
20 Mart 2011, Pazar


devre dışı üretim ortamında kayıt olmak için Hazırlamak

Kullanıcılar seçilmiş bir grup ile beta sitesi başlatıyorum. (Yani benim kayıt tamamen nuke istemiyorum) sadece kısa bir süre için üretim ortamında ve kayıt devre dışı bırakmak istiyorum. Sadece "yukarı" linki, ama yine de Dinlendirici yolları kayıt yapmak için kullanabileceğim daha zeki. bu hackerlar şüpheleniyorum işaret saklayabilirim biliyorum Geliştirme ve test ortamları benim hala çalışır, ancak üretim etkilenmesini kayıt devre dışı bırakmak için en iyi yolu nedir? Herhangi bir işaretçiler için teşekkür ederiz.

Scopes adlı bir işaret için böyle bir yol denedim "" "" işe yaramadı ama. sign_in gider sign_up bu Denedim:

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

İdeal olarak, "#registration_disabled" sayfa. sayfaları bir kullanıcı göndermek istiyoruz Ben sadece oynamak edebileceğim bir çalışma olsun istedim.

EDİT: İstenen model değiştirdim, sonra da ekledi /aşağıdaki/user_spec 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

geçen "yanlış." oldukça doğru. Bir üretim ortamında alay etmek var mı? Sadece tükürmek-balling bu benim.

Teşekkürler!

CEVAP
28 Kasım 2011, PAZARTESİ


Diğerleri sorun yaşıyorsanız bu yana sahip (yorum) yapıyorum. Düzelttim tam olarak burada. Murphyslaw fikri kullandım. Ama aynı zamanda hazırlamak kaydı için yeni kumandanız yönlendirme kullanır, ya da çok sizin için olmaz emin olmak gerekir.

İşte benim denetleyicisi geçersiz kılma:

class RegistrationsController < Devise::RegistrationsController
  def new
    flash[:info] = 'Registrations are not open yet, but please check back soon'
    redirect_to root_path
  end

  def create
    flash[:info] = 'Registrations are not open yet, but please check back soon'
    redirect_to root_path
  end
end

Hızlı mesaj çalışmıyor neden bir türlü kayıt sayfası tökezledi herkesi bilgilendirmek için ekledim.

routes.rb benim ne burada

  if Rails.env.production?
    devise_for :users, :controllers => { :registrations => "registrations" } 
  else
    devise_for :users
  end

Denetleyicileri karma geçersiz kayıt benim denetleyicisi kullanmak istiyorum belirtir.

Her neyse, birisi biraz zaman kazandırır umarım.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Adam Khoury

    Adam Khoury

    23 Ocak 2008
  • michal lelkowski

    michal lelko

    9 Temmuz 2006
  • THE RED DRAGON

    THE RED DRAG

    6 ŞUBAT 2009