2009-07-14 20 views
23

Tôi muốn tạo trang tĩnh sẽ chỉ hiển thị cho người dùng nếu họ nhấp vào liên kết được cung cấp trong một trong các mô hình của tôi. Tôi có thể làm điều này bằng cách làm cho một trang Python một mình và gọi nó, nhưng tôi muốn nó được gọi là từ Django. Giao diện người dùng chỉ được xây dựng bằng cách sử dụng API Django.Trang tĩnh Django?

Mọi đề xuất?

+0

bạn có thể xây dựng một chút? Ví dụ. nội dung của trang tĩnh được yêu cầu nằm trong cơ sở dữ liệu hoặc được cho phép trong một tệp là gì? Chỉ người dùng đã đăng nhập mới được phép truy cập trang tĩnh? –

Trả lời

11

Bạn có ý nghĩa gì đó giống như của Django flatpages app? Nó thực hiện chính xác những gì bạn mô tả.

2

Nếu bạn muốn tạo trang tĩnh, flatpages là lựa chọn tốt. Nó cho phép bạn dễ dàng tạo ra nội dung tĩnh. Tạo nội dung tĩnh không khó hơn việc tạo khung nhìn thực sự.

48

Bỏ qua chế độ xem để hiển thị mẫu tĩnh, thêm dòng này vào "urls.py". Ví dụ "Giới thiệu" trang có thể là

(r'^about', 'django.views.generic.simple.direct_to_template', {'template': 'path/to/about_us.html'}), 
+0

cảm ơn nó hoạt động này chỉ là tôi cần – ha22109

+2

Giải pháp đơn giản tuyệt vời khi giới thiệu các trang phẳng là quá mức cần thiết –

+6

Các chế độ xem chung dựa trên chức năng đã không được dùng nữa từ Django 1.5 trở đi. Thay vào đó, hãy sử dụng chế độ xem dựa trên lớp học: https://docs.djangoproject.com/en/1.5/topics/class-based-views/ –

49

Với quan điểm dựa trên lớp trong các phiên bản mới hơn Django, người ta có thể sử dụng điều này trong urls.py:

from django.views.generic import TemplateView 
url(r'^about', 
    TemplateView.as_view(template_name='path/to/about_us.html'), 
    name='about'), 
+0

Cảm ơn, câu trả lời này giờ đây thay thế cho Rubayeets. – Linef4ult

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