Làm cách nào để tắt kích hoạt email trong ứng dụng đăng ký django?Làm cách nào để tắt kích hoạt email trong ứng dụng đăng ký django?
Trả lời
Bạn luôn có thể sửa đổi this line tới:
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)
Hoặc bạn có thể thay đổi this line tới:
def create_inactive_user(self, username, password, email,
send_email=False, profile_callback=None):
Thay vì sửa đổi ứng dụng đăng ký, tại sao không chỉ kích hoạt cho người dùng same way django-registration does:
Sau khi xem xét nó thậm chí nhiều hơn ... Tôi nghĩ rằng những gì bạn muốn là sử dụng cả các giải pháp. Có lẽ thêm mã trên, chỉ cần sau khi thay đổi được đề xuất bởi Dominic (mặc dù tôi sẽ đề nghị sử dụng tín hiệu, hoặc subclassing biểu mẫu nếu có thể)
OK trả lời cuối cùng:
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)
Tôi có nhầm không? Tôi đã không thử mã của tôi ra, chỉ cần nhìn vào mã trong django-đăng ký. –
Không, tôi thực sự chỉ chỉnh sửa câu trả lời của mình vì tôi nghĩ cả hai giải pháp của chúng tôi là cần thiết :) – Jiaaro
nơi nào điều này xảy ra? bạn có biết cách để làm điều này mà không sửa đổi mã đăng ký django không? Tôi đang nghĩ như một tín hiệu khi người dùng được tạo .. – teewuane
Tốt hơn để sửa chữa các vấn đề ở gốc hơn là băng bằng cách gọi các lệnh để tự động kích hoạt người dùng.
Thêm phương pháp này để models.py đăng ký:
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)
Sau đó, chỉnh sửa đăng ký/backend/giá trị mặc định/init py và tìm ra phương pháp đăng ký().
Thay đổi như sau để gọi phương thức mới của bạn:
#new_user = RegistrationProfile.objects.create_inactive_user(username, email,
#password, site)
new_user = RegistrationProfile.objects.create_active_user(username, email,
password, site)
tôi đã làm theo quy trình của bạn nhưng khi tôi nhập người dùng, nó sẽ không được kích hoạt. – XMen
Trong các phiên bản đầu hiện tại của django đăng ký có một backend đơn giản không có email và bạn có thể viết backend của riêng bạn để xác định các công việc bạn muốn . Xem tại đây https://bitbucket.org/ubernostrum/django-registration/src/fad7080fe769/docs/backend-api.rst để biết tài liệu.
Để sử dụng email đơn giản không có email, chỉ cần thay đổi url của bạn để trỏ đến chương trình phụ trợ này, ví dụ:
(r'^accounts/', include('registration.backends.simple.urls')),
đây là câu trả lời đúng –
Tại sao không sử dụng this method và chỉ sử dụng chương trình phụ trợ đơn giản đi kèm đăng ký django thay vì chương trình phụ trợ mặc định?
Luồng công việc mới sẽ là ... 1. Người dùng đăng ký bằng cách điền vào biểu mẫu đăng ký. 2. Tài khoản của người dùng được tạo và hoạt động ngay lập tức, không có bước xác nhận hoặc kích hoạt trung gian. 3. Người dùng mới được đăng nhập ngay lập tức.
do đó, trên các url chính của bạn.py bạn sẽ thay đổi:
url(r'^accounts/', include('registration.backends.default.urls')),
để
url(r'^accounts/', include('registration.backends.simple.urls')),
- 1. gửi email kích hoạt với đăng ký django
- 2. đăng ký django - làm cách nào để tôi thay đổi example.com trong email?
- 3. Gửi email kích hoạt khi người dùng mới đăng ký
- 4. Làm thế nào để đăng ký email Domainkeys/DKIM bằng ứng dụng khách C# SMTP?
- 5. django + gửi email bằng html với đăng ký django
- 6. Django - xác thực, đăng ký có xác nhận email
- 7. Điều nào linh hoạt hơn? django-đăng ký hoặc django-userena
- 8. Làm cách nào để bảo mật việc sử dụng tập lệnh PHP kích hoạt email?
- 9. Làm cách nào để vô hiệu hóa/đăng ký tài khoản trên đăng ký django?
- 10. Làm cách nào để kích hoạt DATETIME_FORMAT của Django?
- 11. Đăng ký Django, mẫu
- 12. Làm thế nào để thiết lập đăng ký django mà một tài khoản cần phải được kích hoạt bằng tay?
- 13. Cách đăng ký ứng dụng ClickOnce
- 14. Làm cách nào để tắt email thông báo trong Magento?
- 15. Đăng ký iOS cho thông báo đẩy trong ứng dụng
- 16. cách tạo liên kết để hủy đăng ký nhận email
- 17. Làm cách nào để kiểm tra việc gửi email có đăng ký Django trên máy tính cục bộ (Mac 10.7)?
- 18. Trình kích hoạt trình kích hoạt trong Jenkins theo EMAIL
- 19. Cách tốt nhất để đăng ký người dùng ở Django
- 20. Làm thế nào để tắt email mét GMail?
- 21. Làm thế nào để tự động đăng nhập người dùng sau khi đăng ký trong django
- 22. đăng ký django "nhớ tôi"
- 23. Làm cách nào để sử dụng Ghi nhật ký trong Thanh công cụ gỡ lỗi Django?
- 24. Làm cách nào để nhận email và xử lý email trong ứng dụng web
- 25. Làm cách nào để tạo trình kích hoạt bị tắt trong SQL Server 2005?
- 26. Làm thế nào để đăng ký một phím tắt tùy chỉnh cho một ứng dụng cửa sổ
- 27. Làm cách nào để tắt trình kích hoạt trong PostgreSQL 9?
- 28. Django-allauth: gửi email chào mừng khi đăng ký (không cần xác minh)
- 29. ứng dụng đăng ký django và mô hình người dùng tùy chỉnh Django 1.5
- 30. Làm cách nào để tải ứng dụng mô hình Django?
Bạn cần phải gọi activate_user dù (hoặc khác tài khoản của người dùng sẽ không sử dụng được) – Jiaaro
Trong phiên bản mới của django đăng ký, tập tin forms.py doesn' t như thế này cho đến nay. Kiểm tra liên kết này: http://bitbucket.org/ubernostrum/django-registration/src/tip/registration/forms.py – anhtran
điều này thực sự đơn giản để thực hiện mà không cần sửa đổi mã. oh. tôi không nhận ra câu trả lời này bao nhiêu tuổi ... – teewuane