2013-06-05 40 views
5

Tôi đang cố gắng cài đặt và định cấu hình Django AllAuth và tôi đã gặp rất nhiều trở ngại. Tôi sợ tôi chỉ đơn giản là thiếu một số khái niệm cơ bản mà có thể làm rõ một số điều.Cài đặt Django AllAuth

1) Để có được chứng thực xã hội cơ bản làm việc gì thiết lập cần phải được thực hiện bên trong các nhà cung cấp xã hội (facebook, twitter, vv ..)

2) Nếu đây là trường hợp thì làm sao người ta sẽ phát triển địa phương bởi vì ở cái nhìn đầu tiên của thiết lập API của twitter nó yêu cầu các URL chuyển hướng mà sẽ nhận được lông xem xét tất cả mọi thứ ngay bây giờ được lưu trữ tại địa phương.

3) Khi tôi thử và truy cập /accounts/login/, nó chuyển hướng đến /accounts/profile/ mỗi lần. Có vẻ như không thể tìm ra nguyên nhân gây ra chuyển hướng này.

4) Trước đây tôi đã sử dụng Userena để xác thực người dùng của mình và sẽ thêm django-social-auth nhưng khi tôi gặp phải điều đó đã khiến tôi gặp khó khăn. Sau đó tôi tìm thấy AllAuth mà dường như phù hợp với nhu cầu của tôi một cách hoàn hảo nhưng một lần nữa, có một số vấn đề. Bất cứ ai có thể cân nhắc trong quyết định này, bạn sẽ giới thiệu một cái khác và nếu vậy tại sao? Cảm ơn bạn đã giúp đỡ.

CẬP NHẬT: Lỗi Facebook: "URL cho trước không được cấu hình Ứng dụng cho phép: Một hoặc nhiều URL nhất định không được cài đặt của ứng dụng cho phép. Phải khớp với URL của trang web hoặc URL Canvas hoặc tên miền phải là tên miền phụ của một trong các miền của ứng dụng. "

Khi tôi nhấp vào OK, nó sẽ chuyển hướng trở lại trang web của tôi. Trình duyệt của tôi cung cấp cho tôi một lỗi bảo mật và khi tôi thực hiện xong, tôi quay lại trang web của mình hiển thị: "Lỗi đăng nhập mạng xã hội Đã xảy ra lỗi khi cố gắng đăng nhập qua tài khoản mạng xã hội của bạn".

Trả lời

11

1) Có một cái nhìn ở đây: https://speakerdeck.com/tedtieken/signing-up-and-signing-in-users-in-django-with-django-allauth

(cụ thể, hãy trượt 61 trở lên)

2) Đơn giản chỉ cần sử dụng 127.0.0.1:8000 trong URL chuyển hướng của bạn

3) By allauth mặc định chuyển hướng đến LOGIN_REDIRECT_URL, được đặt ra khỏi hộp đến/accounts/profile /: https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url

4) Vì tôi là tác giả của allauth, tôi sẽ bỏ qua tự trả lời câu hỏi này. Duyệt qua bản trình bày đầy đủ được giới thiệu bởi 1) - các trang trình bày ban đầu cung cấp sự so sánh tốt về các tùy chọn khác nhau.

+0

Cảm ơn sự giúp đỡ của bạn đã xóa rất nhiều. Một điều tôi vẫn bị mắc kẹt mặc dù là 'LOGIN_REDIRECT_URL'. Điều đó không chuyển hướng bạn sau khi đăng nhập? Tôi thậm chí còn chưa đi xa đến thế, bất kỳ URL nào tôi cố gắng điều hướng đến dưới '/ accounts /' chuyển hướng đến '/ accounts/profile /'. Tôi đã thử thay đổi cài đặt thành '/ accounts/login /' khiến trình duyệt của tôi báo lỗi rằng "Trang không chuyển hướng đúng". – apardes

+0

Tôi thực sự gặp khó khăn khi tìm bất kỳ tài liệu nào trên thuộc tính 'LOGIN_REDIRECT_URL'. Nó không được liệt kê trong các thiết lập cấu hình trong tài liệu. Tôi tìm thấy nó trong 'app_settings.py' nhưng có vẻ như để chỉ ra chuyển hướng mặc định nên đến gốc của trang. Điều này có đúng không? – apardes

+1

'LOGIN_REDIRECT_URL' là cài đặt Django, không phải là cài đặt allauth. Do đó, bạn sẽ không tìm thấy nó trong 'app_settings.py' (tôi nghĩ bạn đang nhầm lẫn với' ACCOUNT_LOGOUT_REDIRECT_URL'). Nếu bạn truy cập vào/accounts/login/url trong khi bạn đã đăng nhập, bạn sẽ được chuyển hướng ngay đến 'LOGIN_REDIRECT_URL'. – pennersr

Các vấn đề liên quan