Come disabilitare l'attivazione della posta elettronica nell'app di registrazione django?Come disabilitare l'attivazione della posta elettronica nell'app di registrazione django?
risposta
Si può sempre modificare this line a:
new_user = RegistrationProfile.objects.create_inactive_user(username=self.cleaned_data['username'],
password=self.cleaned_data['password1'],
email=self.cleaned_data['email'],
profile_callback=profile_callback,
send_email = False)
Oppure si potrebbe cambiare this line a:
def create_inactive_user(self, username, password, email,
send_email=False, profile_callback=None):
Invece di modificare l'applicazione di registrazione, perché non basta attivare l'utente del same way django-registration does:
Dopo aver guardato ancora di più ... Penso che quello che si desidera è di utilizzare sia soluzioni. Probabilmente aggiungere il codice di cui sopra, solo dopo la modifica suggerita da Dominic (anche se io suggerirei di usare i segnali, o sottoclasse forma se possibile)
OK Risposta finale:
new_user = RegistrationProfile.objects.create_inactive_user(username=self.cleaned_data['username'],
password=self.cleaned_data['password1'],
email=self.cleaned_data['email'],
profile_callback=profile_callback,
send_email = False)
RegistrationProfile.objects.activate_user(new_user.activation_key)
Ho capito male? Non ho provato il mio codice, ho solo dato un'occhiata al codice nella registrazione di Django. –
No, ho appena modificato la mia risposta perché penso che entrambe le nostre soluzioni siano necessarie :) – Jiaaro
dove va? conosci un modo per farlo senza modificare il codice di registrazione di Django? Sto pensando come un segnale a quando l'utente viene creato .. – teewuane
meglio per risolvere il problema la radice di benda chiamando comandi per attivare automaticamente l'utente.
Aggiungi questo metodo per models.py registrazione:
def create_active_user(self, username, email, password,
site):
"""
Create a new, active ``User``, generate a
``RegistrationProfile`` and email its activation key to the
``User``, returning the new ``User``.
"""
new_user = User.objects.create_user(username, email, password)
new_user.is_active = True
new_user.save()
registration_profile = self.create_profile(new_user)
return new_user
create_active_user = transaction.commit_on_success(create_active_user)
Poi, modificare registrazione/backend/default/init .py e trovare il metodo register().
Modificare la seguente per chiamare il nuovo metodo:
#new_user = RegistrationProfile.objects.create_inactive_user(username, email,
#password, site)
new_user = RegistrationProfile.objects.create_active_user(username, email,
password, site)
ho seguito la tua procedura ma quando inserisco l'utente non viene come attivato. – XMen
Nelle versioni di punta attuali di django-registrazione v'è un semplice back-end senza e-mail e si può scrivere il proprio back-end per specificare il flusso di lavoro che si desidera . Vedi qui https://bitbucket.org/ubernostrum/django-registration/src/fad7080fe769/docs/backend-api.rst per la documentazione.
Per utilizzare quello semplice senza e-mail, basta cambiare il tuo urls.py per puntare a questo back-end, ad es.
(r'^accounts/', include('registration.backends.simple.urls')),
questa è la risposta corretta –
Perché non utilizzare this method e basta usare la semplice back-end che viene fornito con Django-registrazione al posto del backend predefinito?
Il nuovo flusso di lavoro sarà ... 1. Un utente si iscrive compilando un modulo di registrazione. 2. L'account dell'utente viene creato ed è attivo immediatamente, senza alcuna conferma intermedia o fase di attivazione. 3. Il nuovo utente ha effettuato l'accesso immediatamente.
così sui tuoi URL principali.py cambieresti:
url(r'^accounts/', include('registration.backends.default.urls')),
a
url(r'^accounts/', include('registration.backends.simple.urls')),
- 1. configurazione della posta elettronica gitlab
- 2. rilevamento della mancanza di posta elettronica
- 3. Imposta posta elettronica come nome utente in Django 1.5
- 4. Python Esempio di modulo di posta elettronica Django
- 5. convalida campo di posta elettronica
- 6. Controllo della registrazione e l'invio di messaggi di posta elettronica in diversi ambienti
- 7. Disabilitare la registrazione della meteorologia
- 8. Come testare la logica della posta elettronica con Play Framework
- 9. convalida indirizzo di posta elettronica non latino
- 10. : Blocco log e posta elettronica
- 11. Come specificare il nome nella posta Django?
- 12. Impostazione account di posta elettronica EC2
- 13. convalida della posta elettronica in applicazione rapida iOS
- 14. Html.Label per visualizzare l'indirizzo di posta elettronica
- 15. Tracciamento della posta elettronica con PHP e immagine
- 16. invio della posta elettronica al seguente server guasto: smtp.gmail.com:25
- 17. Impossibile rilevare automaticamente l'indirizzo di posta elettronica
- 18. Gli allegati di posta elettronica di Django vengono inviati come "noname"
- 19. Esiste un file modello di posta elettronica come * .oft, che può essere aperto in tutti i programmi di posta elettronica?
- 20. Symfony: indirizzo di posta elettronica come parametro di richiesta
- 21. Jetty: come disabilitare la registrazione?
- 22. Come controllare l'indirizzo di posta elettronica esiste o no?
- 23. JENKINS come distribuire gli artefatti al repository di posta elettronica
- 24. Come correggere i domini degli indirizzi di posta elettronica errati?
- 25. Codifica corpo posta elettronica Python 3
- 26. Come disabilitare la registrazione della cache activerecord nelle guide
- 27. Come disabilitare e riattivare la registrazione della console in Python?
- 28. Reagire nativo - inviare foto per posta elettronica
- 29. Java: aprire l'applicazione di posta elettronica predefinita e creare nuovi campi di posta elettronica e campi A e Oggetto
- 30. Non è stato inviato il messaggio di posta elettronica di errore di Django
È necessario chiamare activate_user se (altrimenti l'account dell'utente sarà inutilizzabile) – Jiaaro
Nella nuova versione del django-registro, file di forms.py doesn' t così fino ad ora. Controlla questo link: http://bitbucket.org/ubernostrum/django-registration/src/tip/registration/forms.py – anhtran
questo è davvero semplice da fare senza modificare il codice. oh scatto. non mi rendevo conto di quanti anni avesse questa risposta ... – teewuane