django-private-views

Phần mềm chụp màn hình:
django-private-views
Các chi tiết về phần mềm:
Phiên bản: 1.0
Ngày tải lên: 15 Apr 15
Nhà phát triển: Julien Phalip
Giấy phép: Miễn phí
Phổ biến: 12

Rating: 5.0/5 (Total Votes: 1)

django-tin-views là một ứng dụng Django cung cấp một mô hình phổ biến trong trang web này là khi một vài trang được bảo vệ và yêu cầu đăng nhập để được truy cập & nbsp;. Các trang trílogin_required thường có ích cho những tình huống này. Nhưng, một mô hình khá phổ biến là khi hầu hết các trang web được bảo vệ, chỉ với một vài trường hợp ngoại lệ của các trang mà vẫn công khai (ví dụ như frontpage, trang đăng ký, vv). Trong trường hợp đó, nó có thể được khá tẻ nhạt để trang trí tất cả các quan điểm vớilogin_required, và nó có thể được dễ dàng để quên đi để trang trí một số trong số họ.
django-tin-views bảo vệ từng xem và sau đó cho phép bạn một cách rõ ràng nói cho mà xem phải được công khai. Điều này làm cho mọi thứ dễ dàng hơn cả và ít dễ bị lỗi.
Cài đặt
Cài đặt django-tin-điểm từ PyPI.
pips cài đặt django-tin-views
Thêm privateviews trung gian để thiết lập của bạn:
MIDDLEWARE_CLASSES = (
& Nbsp; ...
& Nbsp; privateviews.middleware.LoginRequiredMiddleware
)
Tuyên bố điểm công cộng
Tại thời điểm này, tất cả các quan điểm của bạn ngoại trừ settings.LOGIN_URL sẽ yêu cầu bạn phải đăng nhập. Vì vậy, bây giờ chúng ta cần phải xác định những quan điểm đó phải được công khai. Có ba cách khác nhau theo ý của bạn: sử dụng một trang trí đặc biệt, danh sách các điểm công cộng, hoặc liệt kê các đường dẫn URL nào.
Sử dụng một Decorator
Sử dụnglogin_not_required bạn một cách rõ ràng có thể buộc một quan điểm được công khai. Ví dụ như:
từ privateviews.decorators nhập login_not_required
login_not_required
def frontpage (yêu cầu):
& Nbsp; ...
Trong trường hợp này, view frontpage sẽ được hiển thị đúng ngay cả khi bạn & rsquo; lại không đăng nhập.
Bảng liệt kê điểm công cộng
Nếu bạn không & rsquo; t có thể truy cập trực tiếp để sửa đổi một view & rsquo; s mã (ví dụ, nó & rsquo; s trong một ứng dụng của bên thứ ba), bạn vẫn có thể buộc điểm cho rằng phải được công khai bằng cách thêm vào các thiết lập PUBLIC_VIEWS trong tập tin cài đặt của bạn. Đây & rsquo; là một ví dụ nếu bạn & rsquo; tái sử dụng các hệ thống django.contrib.auth và ứng dụng django-đăng ký:
PUBLIC_VIEWS = [
& Nbsp; 'django.contrib.auth.views.login',
& Nbsp; 'django.contrib.auth.views.password_reset_done',
& Nbsp; 'django.contrib.auth.views.password_reset',
& Nbsp; 'django.contrib.auth.views.password_reset_confirm',
& Nbsp; 'django.contrib.auth.views.password_reset_complete',
& Nbsp; 'registration.views.register',
& Nbsp; 'registration.views.activate',
]
Liệt kê URL đường dẫn nào
Cách thứ ba và cuối cùng là để trực tiếp chỉ định đường dẫn URL (như các biểu thức thông thường) cho các trang bạn muốn được công khai. Điều này có thể hữu ích, ví dụ, nếu một trang được đưa ra bởi một cái nhìn chung. Nó cũng rất hữu ích nếu bạn đang phục vụ các tập tin media tĩnh qua Django (chỉ được đề nghị trong chế độ phát triển). Do đó, bạn cần phải thêm PUBLIC_PATHS thiết lập trong tập tin cài đặt của bạn. Đây & rsquo; là một ví dụ:
PUBLIC_PATHS = [
& Nbsp; '^% s'% MEDIA_URL,
& Nbsp; '^ / tài khoản / đăng ký / hoàn / $', # Sử dụng 'direct_to_template' nhìn chung
]
Làm 404 lượt xem tin
Tại thời điểm này không đăng nhập người dùng vẫn sẽ có thể nhìn thấy 404 câu trả lời nếu họ truy cập vào một địa chỉ mà không có bản đồ để xem một. Đó không phải là lý tưởng vì nó không nên có thể để xác định cấu trúc trang web không đăng nhập.
Để làm cho 404 lượt xem tin tới tất cả mọi người trừ người dùng đăng nhập, thêm vào sau khi các dòng cuối cùng trong URLconf cấp cao nhất của bạn:
urlpatterns = mẫu ('',
& Nbsp; ...
& Nbsp; url (r '^', 'privateviews.views.private_404')
)

Yêu cầu :

  • Python
  • Django

Phần mềm khác của nhà phát triển Julien Phalip

glamkit-adminboost
glamkit-adminboost

11 May 15

django-treemenus
django-treemenus

12 May 15

Ý kiến ​​để django-private-views

Bình luận không
Nhập bình luận
Bật hình ảnh!