2008-11-06 28 views
12

Tôi đang xem xét việc xây dựng chức năng CMS cơ bản vào sản phẩm web của chúng tôi và đang nghiên cứu các mẹo và ý tưởng thiết kế cho nội dung phiên bản. Tôi đang tìm kiếm các lược đồ cơ sở dữ liệu đang sử dụng ngày nay.Chiến lược phiên bản CMS cho nội dung

Bạn đang sử dụng phiên bản nội dung nào? Mẫu nào áp dụng nếu bạn có các loại nội dung khác nhau cần phiên bản được lưu trữ? Phiên bản câu hỏi được xử lý như thế nào trên Stack Overflow?

Cảm ơn

Trả lời

11

Văn học sử dụng một mô hình 5 chiều cho việc này:

  • phiên bản (muốn thay đổi)
  • trạng thái (vòng đời: sáng tạo, kiểm tra, triển khai, nghỉ hưu)
  • view (html, pdf, hệ thống tệp, nguồn gốc)
  • cấu trúc phân cấp (trang, phần, đoạn)
  • biến thể (tương tự, mô tả sự khác biệt, họ sản phẩm)

Hầu hết các hệ thống chỉ xử lý một vài trong số các tham số này. Để xử lý tất cả năm, bạn phải mô tả (sửa) quy trình phát triển của bạn.

Các tài liệu tham khảo:

Quản lý dữ liệu thiết kế: Năm yếu tố của khung CAD, quản lý cấu hình và quản lý dữ liệu sản phẩm.
van den Hamer, P. Lepoeter, K.
Philips Res., Eindhoven;

giấy này xuất hiện trong: Proceedings of the IEEE
Publication Date: Tháng 1 năm 1996
Khối lượng: 84, Số: 1
Trên trang (s): 42-56
ISSN: 0018-9219
Tài liệu tham khảo trích dẫn: 26
CODEN: IEEPAD
Inspec Số gia nhập: 5.175.049
Digital Object Identifier: 10,1109/5,476025
Phiên bản hiện tại Published: 20 02-08-06

+0

Điều này rất hữu ích từ quan điểm khái niệm. –

+0

Vâng, tôi thấy bài viết rất ngộ nghĩnh. –

1

bản năng ruột của tôi là điều tốt nhất cho điều này là (theo thứ tự bestitude):

  1. Một sẵn sàng hệ thống kiểm soát phiên bản. A nice list here.
  2. Lưu trữ các khác biệt. What is a diff here.
  3. Tôi đoán giải pháp cơ sở dữ liệu rõ ràng của việc có bảng "ContentVersion", nơi bạn có nhiều "Phiên bản" cho mỗi "Nội dung" duy nhất.
2

cũng giống như một tài liệu tham khảo, drupal sử dụng như sau:

node   node_revision 
----   ------------- 
nid*   vid* 
vid   nid 
...   body 
      ... 

(nút cơ bản là kiểu nội dung chính). do đó, mỗi bản sửa đổi được ghi lại và để có được phiên bản mới nhất bạn nhận được vid hiện tại từ nút. nếu bạn quan tâm đến những khác biệt có thể là thứ gì đó để thêm vào phiên bản node_revision của bạn.

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